Removes personal infra baked into copy-paste instructions and the app's own UI ahead of an eventual public release: - AboutModal's "Source code" link is now a build-time env var (VITE_SOURCE_URL) instead of a hardcoded personal Gitea URL, and hides itself when unset rather than pointing somewhere wrong - DEPLOYMENT.md's clone steps are genericized to any git host - LICENSE gets its previously-blank copyright/description lines filled in - CONTRIBUTING.md adds a lightweight contributor-terms note to keep a future dual-licensed offering possible once outside PRs start arriving Deliberately out of scope for now: git commit history (still under the real author identity) and the actual publish destination -- both still undecided. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2.2 KiB
Contributing to DS Chat
Thanks for considering a contribution.
Reporting bugs and requesting features
Open an issue on this project's issue tracker. Include steps to reproduce for a bug, or the problem you're trying to solve for a feature request — that's usually more useful than a proposed solution.
Development setup
See the root README.md's Quickstart, plus backend/README.md and frontend/README.md for the full local dev setup (Postgres, Redis, Python venv, migrations, the Vite dev server). ARCHITECTURE.md covers the overall system design if you're orienting yourself before a larger change.
Before opening a pull request
- Tests: run
pytestinbackend/for any backend change, and add tests for new behavior rather than just the happy path — seebackend/README.md's "Run tests" section. For frontend changes, runnpx tsc -binfrontend/and confirmnpm run buildsucceeds. - Style: match the conventions already in the file you're editing rather than introducing a new pattern — this codebase doesn't have a separate style guide beyond "look at what's already there."
- Scope: smaller, focused PRs are easier to review than large ones that mix unrelated changes.
Contributor terms
By submitting a contribution (a pull request, patch, or similar), you agree that:
- Your contribution is licensed under the project's own license, AGPL-3.0-or-later (LICENSE), and
- You grant the project's maintainer(s) a perpetual, worldwide, non-exclusive right to also relicense your contribution under different terms — for example, as part of a separately-licensed commercial offering built on this project.
This keeps the option of a future dual-licensed (open-source + commercial) version of the project available, without requiring a separate signed agreement for every contribution.
This is a lightweight starting point, not a substitute for legal advice — if you're contributing something substantial, or maintaining a fork with your own commercial plans, it's worth having this reviewed by a lawyer rather than relying on the paragraph above alone.