⚽ ConvocadosDocsllms.txtGitHub

Contributing

Development setup, project structure, and contribution guidelines.

Getting started

git clone https://github.com/Cabeda/Convocados.git
cd Convocados
npm ci
npx prisma generate
npx prisma db push        # create local SQLite DB
npm run dev                # start dev server on http://localhost:4321

Project structure

Convocados/
├── prisma/
│   └── schema.prisma       # Database schema
├── public/                 # Static assets
├── src/
│   ├── components/         # React components (MUI)
│   ├── layouts/            # Astro layouts (DocsLayout, etc.)
│   ├── lib/                # Server utilities (db, webhook, push, i18n)
│   ├── pages/
│   │   ├── api/            # API routes (Astro endpoints)
│   │   ├── docs/           # Documentation pages
│   │   ├── events/         # Event UI pages
│   │   └── index.astro     # Home page
│   └── test/               # Vitest test files
├── Dockerfile
├── fly.toml
└── package.json

Tech stack

LayerTechnology
FrameworkAstro 5 (SSR with Node adapter)
UIReact 19 + MUI 6
DatabaseSQLite via Prisma 6
TestingVitest + Supertest
DeploymentDocker on Fly.io

Scripts

CommandDescription
npm run devStart Astro dev server
npm run buildProduction build
npm run testRun tests with Vitest
npm run typecheckTypeScript type checking
npm run db:generateRegenerate Prisma client
npm run db:migrateCreate and apply migrations
npm run db:studioOpen Prisma Studio GUI

Running tests

npm run test

Tests use Vitest with Supertest for API endpoint testing. The test suite uses an in-memory SQLite database, so no external setup is needed.

Code style

Making changes

  1. Fork the repository and create a feature branch
  2. Make your changes (test-first: write a failing test, then implement)
  3. Run npm run typecheck and npm run test to verify
  4. Open a pull request against main
  5. Sign the Contributor License Agreementwhen the CLA bot asks on your first PR (comment “I have read the CLA Document and I hereby sign the CLA”)
Database changes: If you modify prisma/schema.prisma, run npm run db:migrate to create a migration file, then commit it with your PR.
CLA: First-time contributors must sign the CLA before their pull request can be merged — it lets the maintainer relicense or sell commercial licenses over contributed code under FSL-1.1-ALv2. Trademark use of the Convocados name and logo is covered separately inTRADEMARK.md.