CONTRIBUTING.md
Rama main · réplica de lectura del repositorio original.
# Contributing to Confabulous Code
Thanks for your interest in contributing! Confabulous Code is MIT-licensed open source, and contributions — bug reports, feature ideas, docs fixes, and code — are welcome.
## Reporting bugs and requesting features
Open an issue on [GitHub](https://github.com/ConfabulousDev/confab-web/issues). For bugs, include steps to reproduce, what you expected, and what happened. For features, describe the problem you're trying to solve.
## Contributing code
1. Fork the repo and create a branch from `main`.
2. Make your change, with tests where it makes sense.
3. Run the build, lint, and test gates before opening a PR:
- **Backend:** `go test ./...` (from `backend/`).
- **Frontend:** `npm run build && npm run lint && npm test` (from `frontend/`).
- Or both at once from the repo root: `make test`.
4. Open a pull request describing what changed and why.
## Local development
See [Local Development](README.md#local-development) in the README for the full setup. In short:
```bash
make setup # first run only: creates backend/.env, installs frontend deps
make dev # infra + backend + frontend in one terminal
```
Then open [http://localhost:5173](http://localhost:5173).
> **Note:** the dev loop runs only Postgres + MinIO in Docker, defined in `docker-compose.infra.yml` (driven by `make up`/`make dev`). The root `docker-compose.yml` is the canonical **self-host deploy** stack — running a bare `docker compose up` at the repo root launches the full app from the prebuilt image, not the dev infra. For local development always use the `make` targets.
## Project guides
Each package documents its own conventions:
- [`backend/README.md`](backend/README.md) and [`backend/CLAUDE.md`](backend/CLAUDE.md)
- [`frontend/README.md`](frontend/README.md) and [`frontend/CLAUDE.md`](frontend/CLAUDE.md)
- [`docs/`](docs/) — the user-facing documentation site
## License
By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).