Thank you for your interest in contributing to Spends Tracker! We welcome contributions from the community.
If you find a bug, please open an issue with:
- A clear description of the problem
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
- Your environment (OS, browser, versions)
We welcome feature suggestions! Please open an issue with:
- A clear description of the feature
- Why it would be useful
- Any implementation ideas you have
- Fork the repository
- Create a branch for your feature (
git checkout -b feature/amazing-feature) - Make your changes
- Test your changes thoroughly
- Commit with clear messages (
git commit -m 'Add amazing feature') - Push to your fork (
git push origin feature/amazing-feature) - Open a Pull Request
# Clone your fork
git clone https://github.com/your-username/spends.git
cd spends
# Install frontend dependencies
npm install
# Install backend dependencies
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cd ..
# Run migrations
cd backend
alembic upgrade head
cd ..Terminal 1 - Frontend:
npm run dev -- --host 0.0.0.0Terminal 2 - Backend:
cd backend
source venv/bin/activate
uvicorn app.main:app --reload --host 0.0.0.0 --port 3031- Python: Follow PEP 8
- JavaScript: Use existing patterns in the codebase
- Commits: Write clear, concise commit messages
- Test your changes locally before submitting
- Ensure the application builds without errors:
npm run build - Run backend tests:
cd backend && pytest
- Keep changes focused and atomic
- Update documentation if needed
- Ensure your PR description clearly explains the changes
- Link to any related issues
Feel free to open an issue for any questions or join discussions.
Thank you for contributing!