Herramienta web de administración para cargar usuarios y participaciones en masa a una instalación de CMS mediante archivos CSV. Invoca los CLI cmsAddUser y cmsAddParticipation del sistema de forma segura desde el navegador. Diseñada para uso interno por administradores de concursos de programación.
Backend: Express 5, TypeScript, tsx, express-session, csrf-csrf, multer
Frontend: Preact 10, @preact/signals, Vite 6, TypeScript
- Node.js 22+ y pnpm
- CMS instalado con
cmsAddUserycmsAddParticipationdisponibles en el PATH, o accesibles mediante un script de entorno (verCMS_ENV_SCRIPTen docs/setup.md)
cp .env.example .env # completar las variables requeridas
pnpm installEjecutar en dos terminales:
# Terminal 1
pnpm run dev:backend # Express en http://localhost:9995# Terminal 2
pnpm run dev:frontend # Vite en http://localhost:5173Acceder a http://localhost:5173 — la aplicación pedirá usuario y contraseña de administrador (definidos en .env).
pnpm run build # compila el SPA Preact a client/dist/pnpm start # build + tsx src/index.ts en el puerto PORT (default 9995)El proyecto utiliza Conventional Commits con semantic-release. Al hacer git push origin main, Husky ejecuta semantic-release automáticamente: actualiza package.json, genera CHANGELOG.md y crea un tag git.
| Prefijo | Efecto |
|---|---|
feat: |
Incremento menor (0.x.0) |
fix: |
Incremento de parche (0.0.x) |
feat!: / BREAKING CHANGE: |
Incremento mayor (x.0.0) |
chore:, docs:, test: |
Sin release |
La versión actual se muestra en el pie de página de la aplicación.