Contributing
Set up a development environment and open your first pull request to Cloud Invoice.
Contributing
Thanks for your interest in contributing! The project is licensed under the AGPL-3.0.
Ways to contribute
- Report bugs and request features by opening an issue
- Improve documentation
- Review open pull requests
- Submit code fixes or features
Development environment
See the Quick Start to get a local instance running.
npm run dev
npm run lint
npm run build
npm run typecheckCode style
- TypeScript is required for all source files; strict typing is enforced.
- Run
npm run lintbefore submitting. - Follow the project layout: app routes in
app/, server logic incontrollers/, domain types inlib/types.ts, shared UI incomponents/.
Commit messages
This project uses Conventional Commits, written in lowercase as-
feat: add support for recurring invoices
fix: recalculate totals when a line item is removed
refactor: extract PDF rendering into a reusable component
chore: update dependenciesPull request workflow
- Fork the repository and create a feature branch
git checkout -b feat/your-feature-name. - Make your changes and commit with a Conventional Commit message.
- Push and open a pull request against
main. - Describe what the change does and how it was tested.
- Keep pull requests focused on a single concern.
Docs site
The docs at Cloud Invoice Docs live in site/content/docs/ and are
built with FumaDocs (MDX). To work on them-
cd sitenpm install
npm run devPages are .mdx files; the navigation tree is generated automatically from
the file layout.
License
All contributions are licensed under AGPL-3.0. By contributing, you agree to this license.
Last updated on