Ctrl K
ComunidadGuías…

CONTRIBUTING.md

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

Archivo original ↗Preguntar a KiBot
# 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).