First off, thank you for considering contributing to VELOCE! 🎉
Before creating bug reports, please check existing issues. When creating a bug report, include:
- Clear title and description
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, Docker version, etc.)
- Screenshots if applicable
Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion:
- Use a clear and descriptive title
- Provide detailed description of the suggested enhancement
- Explain why this enhancement would be useful
- List examples of how it would work
- Fork the repo and create your branch from
main - Follow the code style (see below)
- Add tests if applicable
- Update documentation if needed
- Ensure tests pass
- Create a Pull Request
- Follow PEP 8
- Use type hints
- Use Ruff for linting
- Use Black for formatting
- Maximum line length: 88 characters
# Format code
ruff format .
black .
# Lint
ruff check .
mypy .- Follow ESLint rules
- Use Prettier for formatting
- Use TypeScript strict mode
# Format code
npm run format
# Lint
npm run lint- Use multi-stage builds
- Minimize layer count
- Use specific versions (no
latest) - Add health checks
VELOCE/
├── apps/
│ ├── backend/ # FastAPI backend
│ ├── frontend/ # React frontend
│ ├── mobile/ # React Native mobile
│ ├── ai_agents/ # AI agents system
│ └── ai_microservice/# AI microservice
├── docker/
│ ├── develop/ # Development environment
│ └── production/ # Production environment
├── docs/ # Documentation
└── config/ # Configuration files
cd apps/backend
# Install dependencies with UV
uv pip install -e ".[dev]"
# Run tests
pytest
# Run tests with coverage
pytest --cov=app --cov-report=html --cov-report=term
# Run tests in Docker (recommended)
docker exec veloce-api pytest --cov=app --cov-report=termTest Coverage:
- 319 total tests
- 30.54% code coverage
- Tests run in Docker containers
- Coverage reports: HTML, XML, terminal
cd apps/frontend
# Install dependencies
pnpm install
# Run tests
pnpm test
# Run tests with coverage
pnpm run test:coverage- Update README.md for user-facing changes
- Update docs/ for technical documentation
- Add JSDoc/docstrings for new functions
- Update CHANGELOG.md
feature/description- New featuresfix/description- Bug fixesdocs/description- Documentationrefactor/description- Code refactoringtest/description- Tests
Follow Conventional Commits:
feat: add user authentication
fix: resolve database connection issue
docs: update installation guide
refactor: improve error handling
test: add unit tests for auth module
- Update your branch with latest
main - Ensure all tests pass
- Update documentation
- Request review from maintainers
- Address feedback
- Squash commits if requested
- Python 3.12+
- Node.js 20+
- Docker & Docker Compose
- Poetry (Python)
- Git
# Clone repository
git clone https://github.com/YOUR_USERNAME/VELOCE.git
cd VELOCE
# Start development environment
cd docker/develop
docker compose up -d
# Backend
cd apps/backend
poetry install
poetry run uvicorn app.main:app --reload
# Frontend
cd apps/frontend
npm install
npm run dev# Enable debug mode
export DEBUG=true
poetry run uvicorn app.main:app --reload --log-level debug# Enable debug mode
VITE_DEBUG=true npm run dev# View logs
docker compose logs -f
# Inspect container
docker exec -it veloce-api sh- Code follows project style guidelines
- Tests added/updated and passing
- Documentation updated
- No breaking changes (or documented)
- Commit messages follow convention
- PR description is clear
- No merge conflicts
- Discord: Join our community
- GitHub Discussions: Ask questions
- Twitter: @veloce
By contributing, you agree that your contributions will be licensed under the MIT License.
Your contributions make VELOCE better for everyone!