diff options
| -rw-r--r-- | biome.json | 34 | ||||
| -rw-r--r-- | docs/dev/roadmap.md | 2 | ||||
| -rw-r--r-- | package.json | 36 | ||||
| -rw-r--r-- | pkgs/client/package.json | 22 | ||||
| -rw-r--r-- | pkgs/client/tsconfig.json | 16 | ||||
| -rw-r--r-- | pkgs/server/package.json | 22 | ||||
| -rw-r--r-- | pkgs/server/tsconfig.json | 14 | ||||
| -rw-r--r-- | pkgs/shared/package.json | 22 | ||||
| -rw-r--r-- | pkgs/shared/tsconfig.json | 14 | ||||
| -rw-r--r-- | pnpm-lock.yaml | 91 | ||||
| -rw-r--r-- | tsconfig.json | 40 |
11 files changed, 221 insertions, 92 deletions
diff --git a/biome.json b/biome.json new file mode 100644 index 0000000..ba74412 --- /dev/null +++ b/biome.json @@ -0,0 +1,34 @@ +{ + "$schema": "https://biomejs.dev/schemas/2.3.8/schema.json", + "vcs": { + "enabled": true, + "clientKind": "git", + "useIgnoreFile": true + }, + "files": { + "ignoreUnknown": false + }, + "formatter": { + "enabled": true, + "indentStyle": "tab" + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true + } + }, + "javascript": { + "formatter": { + "quoteStyle": "double" + } + }, + "assist": { + "enabled": true, + "actions": { + "source": { + "organizeImports": "on" + } + } + } +} diff --git a/docs/dev/roadmap.md b/docs/dev/roadmap.md index c8f430a..7916835 100644 --- a/docs/dev/roadmap.md +++ b/docs/dev/roadmap.md @@ -7,7 +7,7 @@ - [x] Create docs/dev/roadmap.md - [x] Initialize pnpm workspace - [x] Configure TypeScript -- [ ] Configure Biome +- [x] Configure Biome ### Server Foundation - [ ] Initialize Hono app diff --git a/package.json b/package.json index b74b508..a57879f 100644 --- a/package.json +++ b/package.json @@ -1,18 +1,22 @@ { - "name": "kioku", - "version": "0.1.0", - "description": "An Anki clone", - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "typecheck": "tsc --build pkgs/*/tsconfig.json" - }, - "keywords": [], - "author": "nsfisis", - "license": "MIT", - "packageManager": "pnpm@10.23.0", - "type": "module", - "devDependencies": { - "typescript": "^5.9.3" - } + "name": "kioku", + "version": "0.1.0", + "description": "An Anki clone", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "typecheck": "tsc --build pkgs/*/tsconfig.json", + "lint": "biome check .", + "lint:fix": "biome check --write .", + "format": "biome format --write ." + }, + "keywords": [], + "author": "nsfisis", + "license": "MIT", + "packageManager": "pnpm@10.23.0", + "type": "module", + "devDependencies": { + "@biomejs/biome": "^2.3.8", + "typescript": "^5.9.3" + } } diff --git a/pkgs/client/package.json b/pkgs/client/package.json index 35a5bae..ec5a7ee 100644 --- a/pkgs/client/package.json +++ b/pkgs/client/package.json @@ -1,13 +1,13 @@ { - "name": "@kioku/client", - "version": "0.1.0", - "private": true, - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "nsfisis", - "license": "MIT", - "packageManager": "pnpm@10.23.0", - "type": "module" + "name": "@kioku/client", + "version": "0.1.0", + "private": true, + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "nsfisis", + "license": "MIT", + "packageManager": "pnpm@10.23.0", + "type": "module" } diff --git a/pkgs/client/tsconfig.json b/pkgs/client/tsconfig.json index 0dc0dfe..21d77ad 100644 --- a/pkgs/client/tsconfig.json +++ b/pkgs/client/tsconfig.json @@ -1,10 +1,10 @@ { - "extends": "../../tsconfig.json", - "compilerOptions": { - "lib": ["ES2022", "DOM", "DOM.Iterable"], - "outDir": "./dist", - "rootDir": "./src" - }, - "include": ["src/**/*"], - "exclude": ["node_modules", "dist"] + "extends": "../../tsconfig.json", + "compilerOptions": { + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "outDir": "./dist", + "rootDir": "./src" + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] } diff --git a/pkgs/server/package.json b/pkgs/server/package.json index d986b65..3d179d6 100644 --- a/pkgs/server/package.json +++ b/pkgs/server/package.json @@ -1,13 +1,13 @@ { - "name": "@kioku/server", - "version": "0.1.0", - "private": true, - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "nsfisis", - "license": "MIT", - "packageManager": "pnpm@10.23.0", - "type": "module" + "name": "@kioku/server", + "version": "0.1.0", + "private": true, + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "nsfisis", + "license": "MIT", + "packageManager": "pnpm@10.23.0", + "type": "module" } diff --git a/pkgs/server/tsconfig.json b/pkgs/server/tsconfig.json index ed464a9..038af8a 100644 --- a/pkgs/server/tsconfig.json +++ b/pkgs/server/tsconfig.json @@ -1,9 +1,9 @@ { - "extends": "../../tsconfig.json", - "compilerOptions": { - "outDir": "./dist", - "rootDir": "./src" - }, - "include": ["src/**/*"], - "exclude": ["node_modules", "dist"] + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "./dist", + "rootDir": "./src" + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] } diff --git a/pkgs/shared/package.json b/pkgs/shared/package.json index c15c299..26c95b7 100644 --- a/pkgs/shared/package.json +++ b/pkgs/shared/package.json @@ -1,13 +1,13 @@ { - "name": "@kioku/shared", - "version": "0.1.0", - "private": true, - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - }, - "author": "nsfisis", - "license": "MIT", - "packageManager": "pnpm@10.23.0", - "type": "module" + "name": "@kioku/shared", + "version": "0.1.0", + "private": true, + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "nsfisis", + "license": "MIT", + "packageManager": "pnpm@10.23.0", + "type": "module" } diff --git a/pkgs/shared/tsconfig.json b/pkgs/shared/tsconfig.json index ed464a9..038af8a 100644 --- a/pkgs/shared/tsconfig.json +++ b/pkgs/shared/tsconfig.json @@ -1,9 +1,9 @@ { - "extends": "../../tsconfig.json", - "compilerOptions": { - "outDir": "./dist", - "rootDir": "./src" - }, - "include": ["src/**/*"], - "exclude": ["node_modules", "dist"] + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "./dist", + "rootDir": "./src" + }, + "include": ["src/**/*"], + "exclude": ["node_modules", "dist"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 923850a..9fa931c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,9 @@ importers: .: devDependencies: + '@biomejs/biome': + specifier: ^2.3.8 + version: 2.3.8 typescript: specifier: ^5.9.3 version: 5.9.3 @@ -20,6 +23,59 @@ importers: packages: + '@biomejs/biome@2.3.8': + resolution: {integrity: sha512-Qjsgoe6FEBxWAUzwFGFrB+1+M8y/y5kwmg5CHac+GSVOdmOIqsAiXM5QMVGZJ1eCUCLlPZtq4aFAQ0eawEUuUA==} + engines: {node: '>=14.21.3'} + hasBin: true + + '@biomejs/cli-darwin-arm64@2.3.8': + resolution: {integrity: sha512-HM4Zg9CGQ3txTPflxD19n8MFPrmUAjaC7PQdLkugeeC0cQ+PiVrd7i09gaBS/11QKsTDBJhVg85CEIK9f50Qww==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [darwin] + + '@biomejs/cli-darwin-x64@2.3.8': + resolution: {integrity: sha512-lUDQ03D7y/qEao7RgdjWVGCu+BLYadhKTm40HkpJIi6kn8LSv5PAwRlew/DmwP4YZ9ke9XXoTIQDO1vAnbRZlA==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [darwin] + + '@biomejs/cli-linux-arm64-musl@2.3.8': + resolution: {integrity: sha512-PShR4mM0sjksUMyxbyPNMxoKFPVF48fU8Qe8Sfx6w6F42verbwRLbz+QiKNiDPRJwUoMG1nPM50OBL3aOnTevA==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-arm64@2.3.8': + resolution: {integrity: sha512-Uo1OJnIkJgSgF+USx970fsM/drtPcQ39I+JO+Fjsaa9ZdCN1oysQmy6oAGbyESlouz+rzEckLTF6DS7cWse95g==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-x64-musl@2.3.8': + resolution: {integrity: sha512-YGLkqU91r1276uwSjiUD/xaVikdxgV1QpsicT0bIA1TaieM6E5ibMZeSyjQ/izBn4tKQthUSsVZacmoJfa3pDA==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-linux-x64@2.3.8': + resolution: {integrity: sha512-QDPMD5bQz6qOVb3kiBui0zKZXASLo0NIQ9JVJio5RveBEFgDgsvJFUvZIbMbUZT3T00M/1wdzwWXk4GIh0KaAw==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-win32-arm64@2.3.8': + resolution: {integrity: sha512-H4IoCHvL1fXKDrTALeTKMiE7GGWFAraDwBYFquE/L/5r1927Te0mYIGseXi4F+lrrwhSWbSGt5qPFswNoBaCxg==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [win32] + + '@biomejs/cli-win32-x64@2.3.8': + resolution: {integrity: sha512-RguzimPoZWtBapfKhKjcWXBVI91tiSprqdBYu7tWhgN8pKRZhw24rFeNZTNf6UiBfjCYCi9eFQs/JzJZIhuK4w==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [win32] + typescript@5.9.3: resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} @@ -27,4 +83,39 @@ packages: snapshots: + '@biomejs/biome@2.3.8': + optionalDependencies: + '@biomejs/cli-darwin-arm64': 2.3.8 + '@biomejs/cli-darwin-x64': 2.3.8 + '@biomejs/cli-linux-arm64': 2.3.8 + '@biomejs/cli-linux-arm64-musl': 2.3.8 + '@biomejs/cli-linux-x64': 2.3.8 + '@biomejs/cli-linux-x64-musl': 2.3.8 + '@biomejs/cli-win32-arm64': 2.3.8 + '@biomejs/cli-win32-x64': 2.3.8 + + '@biomejs/cli-darwin-arm64@2.3.8': + optional: true + + '@biomejs/cli-darwin-x64@2.3.8': + optional: true + + '@biomejs/cli-linux-arm64-musl@2.3.8': + optional: true + + '@biomejs/cli-linux-arm64@2.3.8': + optional: true + + '@biomejs/cli-linux-x64-musl@2.3.8': + optional: true + + '@biomejs/cli-linux-x64@2.3.8': + optional: true + + '@biomejs/cli-win32-arm64@2.3.8': + optional: true + + '@biomejs/cli-win32-x64@2.3.8': + optional: true + typescript@5.9.3: {} diff --git a/tsconfig.json b/tsconfig.json index db698cf..564e2a2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,22 +1,22 @@ { - "compilerOptions": { - "target": "ES2022", - "lib": ["ES2022"], - "module": "ESNext", - "moduleResolution": "bundler", - "resolveJsonModule": true, - "esModuleInterop": true, - "strict": true, - "skipLibCheck": true, - "declaration": true, - "declarationMap": true, - "sourceMap": true, - "noEmit": true, - "isolatedModules": true, - "verbatimModuleSyntax": true, - "noUncheckedIndexedAccess": true, - "noImplicitOverride": true, - "forceConsistentCasingInFileNames": true - }, - "exclude": ["node_modules", "dist"] + "compilerOptions": { + "target": "ES2022", + "lib": ["ES2022"], + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "esModuleInterop": true, + "strict": true, + "skipLibCheck": true, + "declaration": true, + "declarationMap": true, + "sourceMap": true, + "noEmit": true, + "isolatedModules": true, + "verbatimModuleSyntax": true, + "noUncheckedIndexedAccess": true, + "noImplicitOverride": true, + "forceConsistentCasingInFileNames": true + }, + "exclude": ["node_modules", "dist"] } |
