Skip to content
sylvadoc logo

sylvadoc

Les préférences de Sylvadoc pour la confection de projets web en Nuxt/Vue/Typescript.

SKILL.md

Full skill instructions

Les préférences de Sylvadoc

Ces skills documentent les préférences de Sylvadoc pour la confection de projets web modernes en JavaScript/​TypeScript, notamment avec Vue, Nuxt, Vite, et d'autres outils populaires.

Quick Summary

CategoryPreference
Package Managerpnpm
LanguageTypeScript (strict mode)
Module SystemESM ("type": "module")
Linting & FormattingESLint & Prettier
TestingVitest
DocumentationVitePress (in docs/)

Stack principal

Package Manager (pnpm)

Utiliser pnpm comme package manager.

{
  "packageManager": "pnpm@latest"
}

TypeScript (Strict Mode)

Toujours utiliser TypeScript avec le mode strict activé.

{
  "compilerOptions": {
    "target": "ESNext",
    "module": "ESNext",
    "moduleResolution": "bundler",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true
  }
}

Unit Testing (Vitest)

Utiliser Vitest pour les tests unitaires.

{
  "scripts": {
    "test": "vitest"
  }
}

Conventions:

  • Place test files next to source files: foo.ts → foo.test.ts (same directory)
  • High-level tests go in tests/ directory in each package
  • Use describe and it API (not test)
  • Use expect API for assertions
  • Use assert only for TypeScript null assertions
  • Use toMatchSnapshot for complex output assertions
  • Use toMatchFileSnapshot with explicit file path and extension for language-specific output (exclude those files from linting)

References

Configurations et fichiers communs

TopicDescriptionReference
eslintESLint flat config for formatting and lintingsylvadoc-eslint-config
.gitignorePreferred .gitignore for JS/​TS projectsgitignore
------------------------------------------------------------------------------------

Développement Web

TopicDescriptionReference
css developmentPreferences for writing CSS with modern featurescss-development
html developmentPreferences for writing semantic and accessible HTMLhtml-development
app developmentPreferences for Vue/​Vite/​Nuxt/​UnoCSS web applicationsapp-development
-------------------------------