Thank you for your interest in contributing to Inkforge! This document provides guidelines and instructions for contributing.
By participating, you agree to abide by our Code of Conduct.
- Check existing issues to avoid duplicates
- Use the bug report template
- Include reproduction steps, expected vs actual behavior, and environment details
- Open a feature request
- Describe the use case, not just the solution
- Include mockups or examples where possible
- Fork the repo and create a branch from
main - Follow the naming convention:
feat/,fix/,docs/,refactor/ - Write clear, descriptive commit messages
- Add tests for new functionality
- Ensure all tests pass before submitting
- Fill out the PR template
# Clone your fork
git clone https://github.com/YOUR_USERNAME/INKFORGE.git
cd INKFORGE
# Backend
cd backend
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
pip install -r requirements-dev.txt
# Frontend
cd ../frontend
npm install- Follow PEP 8
- Use type hints for all function signatures
- Write docstrings (Google style) for public functions
- Format with
ruff format, lint withruff check - Maximum line length: 100 characters
- Follow ESLint configuration in the project
- Format with Prettier
- Use functional components with hooks
- Use descriptive variable and function names
- Use Conventional Commits:
feat:new featurefix:bug fixdocs:documentationtest:adding testsrefactor:code refactoringchore:maintenance tasks
# Backend tests
cd backend
pytest tests/ -v
# Frontend tests (when configured)
cd frontend
npm testOpen a discussion or reach out via issues.
Thank you for helping make Inkforge better! 🖊