Contributing
Thank you for your interest in contributing to the Vedic Numerology-Astrology Integration System!
Development Setup
Fork the repository on GitHub
Clone your fork:
git clone https://github.com/YOUR_USERNAME/numerology-white-paper.git cd numerology-white-paper
Set up development environment:
make setup-devRun tests to ensure everything works:
make test
Code Style
This project follows strict code quality standards:
Python Code Style: - Black for code formatting - isort for import sorting - flake8 for linting - mypy for type checking
Run quality checks:
make quality-gate
Format code:
make format
Testing
Run all tests:
make test
Run tests with coverage:
make test-cov
Run specific tests:
pytest tests/test_numerology.py -v
Documentation
Build documentation:
make docs
Serve documentation locally:
make serve-docs
Writing Documentation: - Use Google-style docstrings - Include examples in docstrings - Keep documentation up-to-date with code changes
Submitting Changes
Create a feature branch:
git checkout -b feature/your-feature-name
Make your changes following the guidelines above
Run quality checks:
make quality-gateCommit your changes:
git add . git commit -m "feat: add your feature description"
Push and create a pull request:
git push origin feature/your-feature-name
Pull Request Guidelines
Include a clear description of changes
Reference any related issues
Ensure all tests pass
Update documentation if needed
Follow conventional commit format
Types of Contributions
Code Contributions: - Bug fixes - New features - Performance improvements - Code refactoring
Documentation: - Improve existing docs - Add tutorials - Create examples - Fix typos
Testing: - Add unit tests - Integration tests - Performance benchmarks
Research: - Validate algorithms - Add new calculation methods - Improve accuracy
Reporting Issues
When reporting bugs or requesting features:
Check existing issues first
Use issue templates when available
Include: - Python version - Operating system - Steps to reproduce - Expected vs actual behavior - Code examples if applicable
Code of Conduct
This project follows a code of conduct that promotes:
Respectful communication
Inclusive language
Constructive feedback
Professional collaboration
Ethical research practices