Ctrl K
ComunidadGuías…

CONTRIBUTING.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Contributing to Campus Wall

Thanks for helping improve the public mirror. It is safe to discuss and change application code here, but it must remain independent from any production campus service.

## Before you start

1. Search existing issues before opening a new one.
2. Create a focused branch from `main` and keep one concern per pull request.
3. Copy `config/env.example` to a local `.env`; never commit real credentials, private domains, user content, uploads, logs or database files.

## Making a change

1. Read `docs/PROJECT_INDEX.md` to find the responsible page, route, service and test.
2. Keep `frontend/` and `public/` identical when changing HTML, page JavaScript or CSS; run `npm run sync:frontend` and then `npm run check:mirrors`.
3. Cover the affected desktop and mobile layout, including `768px/769px`, empty, loading, error and permission states where applicable.
4. Update the code map when an entry point moves or its responsibility changes.
5. For transaction, idempotency or durable-task changes, run the focused checks: `npm run test:schema-migrations`, `npm run test:write-transaction`, `npm run test:notification-outbox`, `npm run test:content-transactions`, `npm run test:mp-sync-jobs` and `npm run test:architecture-reliability` as applicable.

## Verify before opening a pull request

```powershell
npm run check:mirrors
npm run check:privacy
npm run check:deployment
npm test
git diff --check
```

State the commands actually run and any checks you could not run in the pull-request description.

## Review expectations

Pull requests need a clear trigger, expected behavior and focused diff. Maintainers may request tests, responsive evidence or removal of material that could identify a real school, student, service or credential.

By submitting a contribution, you agree that it is provided under the repository's [Apache-2.0 license](LICENSE). Preserve [NOTICE](NOTICE) when distributing the project or a derivative.