3.2 KiB
3.2 KiB
Instrucciones para GitHub Copilot 🔧
Resumen breve
Quasar es una aplicación web para gestionar una biblioteca personal de videojuegos. Este repositorio está en estado inicial: contiene package.json y README.md pero no hay código fuente ni tests aún. Prioridad: configurar pruebas (Playwright), scripts útiles y prácticas de seguridad para manejar claves/API.
Estilo de código ✅
- Mantener CommonJS (
type: commonjsenpackage.json). - Añadir ESLint + Prettier para consistencia (recomendado si se añade código).
Build y Test 🧪
- Instalación:
yarn install(usar Yarn/local;packageManagerse indica enpackage.json). package.jsonactual tiene untestplaceholder. Reemplazar por un runner real tras inicializar Playwright. (recomendado)- Inicializar Playwright:
npx playwright test --init. (recomendado) - Instalar dependencias de navegadores:
npm run test:install(sugerido script abajo). - En CI:
yarn install && yarn test:install && yarn test.
Convenciones 🔁
- Código fuente:
src/(recomendado). - Tests:
tests/*.spec.(js|ts)(recomendado). - Preferir tests reproducibles y ejemplo básico al iniciar el proyecto. (recomendado)
Puntos de integración 🔗
README.mdmenciona fuentes de metadatos: IGDB, Screenscraper, MobyGames. Documentar qué APIs se usarán y dónde se guardan claves. (recomendado)- Guardar tokens en variables de entorno y no en el repositorio.
Seguridad 🔒
.gitignoreya incluye.env— no commitear archivos con secretos.- Usar GitHub Secrets para credenciales en workflows. (recomendado)
Scripts sugeridos para package.json (ejemplo)
"scripts": {
"test": "playwright test",
"test:install": "playwright install --with-deps",
"test:ci": "playwright test --reporter=github",
"lint": "eslint . --ext .js,.ts",
"format": "prettier --write .",
"start": "node src/index.js"
}
Nota: el
testactual esecho "Error: no test specified" && exit 1. Reemplazarlo porplaywright testtras inicializar tests. (recomendado)
Pasos rápidos iniciales ▶️
yarn installnode -v(asegurar Node >= 18)npx playwright test --inityarn test:installyarn test(validar que al menos un test ejemplo pase)
Estado actual (modificaciones aplicadas) ✅
- Añadidos:
.eslintrc.cjs,.prettierrc,tsconfig.json,.eslintignore,.prettierignore. - Inicializado Playwright:
playwright.config.tsytests/example.spec.ts(TypeScript). - Actualizados:
package.json— scripts (test,test:install,lint,format,start) ypackageManager(ahorayarn@4.12.0). - Dependencias dev instaladas con Yarn: ESLint, Prettier, TypeScript,
@typescript-eslint/*y Playwright. - Resultado:
yarn testpasó (3 tests) en Chromium, Firefox y WebKit.
¿Feedback rápido? Si quieres, puedo:
- Scaffold inicial (crear
src/,tests/example.spec.js, actualizarpackage.jsoncon scripts). - Añadir ESLint + Prettier y sus scripts.
- Proponer un workflow de GitHub Actions para ejecutar tests en PRs.
Por favor indica si prefieres JavaScript o TypeScript para el scaffold (recomendado: JavaScript si no quieres migrar a TS ahora).