mirror of
https://github.com/linsa-io/linsa.git
synced 2026-04-24 17:28:41 +02:00
chore: project config and docs (#152)
* refactor(eslint): improve config readability and structure * chore(tsconfig): group options and add explanatory comments * docs(readme): restructure for clearer setup and contribution guide
This commit is contained in:
@@ -3,22 +3,22 @@ import js from "@eslint/js"
|
|||||||
|
|
||||||
const compat = new FlatCompat()
|
const compat = new FlatCompat()
|
||||||
|
|
||||||
|
const typescriptConfig = compat.extends(
|
||||||
|
"eslint:recommended",
|
||||||
|
"plugin:@typescript-eslint/recommended-type-checked",
|
||||||
|
"plugin:@typescript-eslint/stylistic-type-checked",
|
||||||
|
"prettier"
|
||||||
|
)
|
||||||
|
|
||||||
|
const javascriptConfig = js.configs.recommended
|
||||||
|
|
||||||
export default [
|
export default [
|
||||||
{
|
{
|
||||||
...compat
|
files: ["**/*.{ts,tsx,mts}"],
|
||||||
.extends(
|
...typescriptConfig
|
||||||
"eslint:recommended",
|
|
||||||
"plugin:@typescript-eslint/recommended-type-checked",
|
|
||||||
"plugin:@typescript-eslint/stylistic-type-checked",
|
|
||||||
"prettier"
|
|
||||||
)
|
|
||||||
.map(c => ({
|
|
||||||
...c,
|
|
||||||
files: ["**/*.{ts,tsx,mts}"]
|
|
||||||
}))
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
files: ["**/*.{js,jsx,cjs,mjs}"],
|
files: ["**/*.{js,jsx,cjs,mjs}"],
|
||||||
...js.configs.recommended
|
...javascriptConfig
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
44
readme.md
44
readme.md
@@ -1,33 +1,49 @@
|
|||||||
# [Learn-Anything.xyz](https://learn-anything.xyz)
|
# Learn-Anything.xyz
|
||||||
|
|
||||||
|
[](https://x.com/learnanything_)
|
||||||
|
|
||||||
|
[Learn-Anything.xyz](https://learn-anything.xyz) is an open-source learning platform.
|
||||||
|
|
||||||
|
Visit the website at: https://learn-anything.xyz
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
Using [Bun](https://bun.sh).
|
[Bun](https://bun.sh) is required to run this project.
|
||||||
|
|
||||||
```
|
Install dependencies:
|
||||||
|
|
||||||
|
```bash
|
||||||
bun i
|
bun i
|
||||||
```
|
```
|
||||||
|
|
||||||
[Jazz](https://jazz.tools/) is used for all global/local state management.
|
## Run Website
|
||||||
|
|
||||||
## Run website
|
To start the website locally:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
bun web
|
bun web
|
||||||
```
|
```
|
||||||
|
|
||||||
## Contribute
|
## Development
|
||||||
|
|
||||||
Currently things are unstable but will improve.
|
- [Jazz](https://jazz.tools/) is used for all global/local state management.
|
||||||
|
- The project is currently in an unstable state but actively improving.
|
||||||
|
|
||||||
If you want to help contribute to code, ask for help on [Discord](https://discord.gg/bxtD8x6aNF)'s `#dev` channel. You will be onboarded and unblocked fast.
|
## Contributing
|
||||||
|
|
||||||
Can always submit draft PRs with good ideas/fixes. We will help along the way to make it merge ready.
|
We welcome contributions! Here's how you can get involved:
|
||||||
|
|
||||||
## Chat
|
1. Join our [Discord](https://discord.gg/bxtD8x6aNF) and ask for help in the `#dev` channel.
|
||||||
|
2. Submit draft PRs with your ideas or fixes. We'll guide you through the process.
|
||||||
|
|
||||||
Community chat in [Discord server](https://discord.gg/bxtD8x6aNF).
|
## Community
|
||||||
|
|
||||||
Internal dev chat in Telegram (can email `join@learn-anything.xyz` to join core team). We will reach out with offer to join if you contribute to repo in form of PRs too.
|
- **Public Chat**: Join our [Discord server](https://discord.gg/bxtD8x6aNF).
|
||||||
|
- **Internal Dev Chat**: Available on Telegram.
|
||||||
|
- Email `join@learn-anything.xyz` to join the core team.
|
||||||
|
- Active contributors may receive invitations to join.
|
||||||
|
|
||||||
[](https://x.com/learnanything_)
|
## Notes
|
||||||
|
|
||||||
|
- The project is in active development. Expect frequent changes.
|
||||||
|
- We prioritize quick onboarding and unblocking of contributors.
|
||||||
|
|||||||
@@ -1,29 +1,44 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
|
// Project Structure
|
||||||
"rootDirs": [".", ".next-types"],
|
"rootDirs": [".", ".next-types"],
|
||||||
"target": "esnext",
|
|
||||||
"module": "esnext",
|
|
||||||
"moduleResolution": "bundler",
|
|
||||||
"lib": ["dom", "dom.iterable", "esnext"],
|
|
||||||
"allowJs": true,
|
|
||||||
"skipLibCheck": true,
|
|
||||||
"strict": true,
|
|
||||||
"noEmit": true,
|
|
||||||
"esModuleInterop": true,
|
|
||||||
"resolveJsonModule": true,
|
|
||||||
"isolatedModules": true,
|
|
||||||
"jsx": "preserve",
|
|
||||||
"incremental": true,
|
|
||||||
"plugins": [
|
|
||||||
{
|
|
||||||
"name": "next"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"baseUrl": ".",
|
"baseUrl": ".",
|
||||||
"paths": {
|
"paths": {
|
||||||
"@/*": ["./*"]
|
"@/*": ["./*"]
|
||||||
},
|
},
|
||||||
"types": ["bun-types"]
|
|
||||||
|
// Module Settings
|
||||||
|
"target": "esnext",
|
||||||
|
"module": "esnext",
|
||||||
|
"moduleResolution": "bundler",
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"resolveJsonModule": true,
|
||||||
|
|
||||||
|
// Compilation Behavior
|
||||||
|
"noEmit": true,
|
||||||
|
"incremental": true,
|
||||||
|
"isolatedModules": true,
|
||||||
|
|
||||||
|
// Type Checking
|
||||||
|
"strict": true,
|
||||||
|
"skipLibCheck": true,
|
||||||
|
|
||||||
|
// JavaScript Support
|
||||||
|
"allowJs": true,
|
||||||
|
|
||||||
|
// React Support
|
||||||
|
"jsx": "preserve",
|
||||||
|
|
||||||
|
// Libraries and Types
|
||||||
|
"lib": ["dom", "dom.iterable", "esnext"],
|
||||||
|
"types": ["bun-types"],
|
||||||
|
|
||||||
|
// Plugins
|
||||||
|
"plugins": [
|
||||||
|
{
|
||||||
|
"name": "next"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "**/*.(mts|ts)"],
|
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", "**/*.(mts|ts)"],
|
||||||
"exclude": ["node_modules"]
|
"exclude": ["node_modules"]
|
||||||
|
|||||||
Reference in New Issue
Block a user