Contributing CE
Aicser CE is open source under AGPL-3.0. Bug fixes, features, and documentation improvements are all welcome.
Before you start
- Browse open issues to find something to work on
- For significant changes, open an issue first to discuss the approach before writing code
Workflow
1. Fork the repository
Fork github.com/Aicser-Platform/aicser to your GitHub account.
2. Create a branch
git checkout -b your-feature-or-fix-name
Use descriptive names — e.g. fix-data-source-connection-timeout or feat-add-scatter-chart-labels.
3. Set up your development environment
Follow the Local Development Setup guide.
4. Make your changes
Keep pull requests focused. One PR should address one concern.
5. Run linters and tests
# Server
cd server
poetry run black . && poetry run isort . && poetry run flake8 .
poetry run pytest
# Client
cd client
npm run lint && npm run format
npm run test
6. Submit a pull request
Push your branch and open a pull request against main. Describe what the change does and why.
Code style
Python (server): Black (line length 88), isort, flake8
TypeScript (client): ESLint, Prettier
Opening issues
Report bugs and request features at github.com/Aicser-Platform/aicser/issues.
When reporting a bug, include:
- Steps to reproduce
- Expected behaviour
- Actual behaviour
- Aicser version, OS, and Docker version