- Outillage complet : pnpm workspaces (catalog), Biome, TypeScript (project references, CommonJS/Node10), Vitest, TypeDoc (validation bloquante en CI), Changesets. - Organisation des packages en catégories client/common/server. - Migration de @lightweight-sdk/web-component (packages/client/) depuis l'ancien repo lightweight-sdk-web-component : code source copié à l'identique, aucune modification. package.json/tsconfig.json/README.md adaptés autour. Exclu de la validation TypeDoc stricte et de quelques règles Biome (formatage, noShadowRestrictedNames) puisque le code ne peut pas être édité pour s'y conformer - détails dans spec/packages.md. - Workflows Forgejo Actions (.forgejo/workflows/) : ci.yml (lint, build, test, docs:check) et release.yml (publication sur le registre npm privé via Changesets). - Script pnpm create-package <client|common|server> <nom> pour scaffolder les futurs packages. - Documentation dans /spec (architecture, conventions, ci-cd, packages). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
62 lines
1.1 KiB
JSON
62 lines
1.1 KiB
JSON
{
|
|
"$schema": "https://biomejs.dev/schemas/2.5.14/schema.json",
|
|
"vcs": {
|
|
"enabled": true,
|
|
"clientKind": "git",
|
|
"useIgnoreFile": true
|
|
},
|
|
"files": {
|
|
"ignoreUnknown": false
|
|
},
|
|
"formatter": {
|
|
"enabled": true,
|
|
"indentStyle": "tab",
|
|
"indentWidth": 2,
|
|
"lineWidth": 100
|
|
},
|
|
"linter": {
|
|
"enabled": true,
|
|
"rules": {
|
|
"preset": "recommended",
|
|
"style": {
|
|
"useConsistentMemberAccessibility": {
|
|
"level": "error",
|
|
"options": { "accessibility": "explicit" }
|
|
}
|
|
},
|
|
"nursery": {
|
|
"noFloatingPromises": "error",
|
|
"noMisusedPromises": "error",
|
|
"useAwaitThenable": "error"
|
|
}
|
|
}
|
|
},
|
|
"javascript": {
|
|
"formatter": {
|
|
"quoteStyle": "single",
|
|
"semicolons": "always",
|
|
"trailingCommas": "all"
|
|
}
|
|
},
|
|
"assist": {
|
|
"enabled": true,
|
|
"actions": {
|
|
"source": {
|
|
"organizeImports": "on"
|
|
}
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"includes": ["packages/client/web-component/src/**"],
|
|
"formatter": { "enabled": false },
|
|
"linter": {
|
|
"rules": {
|
|
"suspicious": {
|
|
"noShadowRestrictedNames": "off"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|