-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Description
Improving Project Maintainability and Dissemination
This issue outlines key improvements needed to make minian-bin more maintainable and accessible to the scientific community.
Documentation
- Enhance README.md
- Project description and purpose
- Installation instructions (including CUDA setup)
- Quick start guide
- Link to documentation
- Create API documentation (Sphinx/MkDocs)
- Add docstrings to key functions/classes
- Create example notebooks
Testing Infrastructure
- Add unit tests for core functionality
- Add integration tests for pipelines
- Set up GitHub Actions CI
- Add test coverage reporting
- Create test data fixtures
Code Organization & Quality
- Add type hints consistently
- Separate public API from internal functions
- Implement consistent logging
- Add code quality tools:
[tool.pdm.dev-dependencies] dev = [ "black", "isort", "flake8", "mypy", "pytest", "pytest-cov", "sphinx", ]
- Set up pre-commit hooks
Development Guidelines
- Create CONTRIBUTING.md
- Code style guidelines
- PR process
- Development setup instructions
- Add issue templates
- Create CHANGELOG.md
Package Distribution
- Complete pyproject.toml metadata
- Add project URLs
- Consider PyPI publication
- Create conda/mamba package recipe
Dependencies
- Review and lock version ranges
- Split requirements (core vs optional)
- Document system requirements
- Add environment.yml
Examples and Tutorials
- Create examples/ directory
- Jupyter notebooks
- Sample datasets
- Common analysis pipelines
- Performance optimization tips
Community Resources
- Add CODE_OF_CONDUCT.md
- Set up GitHub Discussions
- Create documentation website
- Add CITATION.cff
Performance & Deployment
- Create benchmarking suite
- Document performance expectations
- Create release process
- Set up automated dependency updates
Priority and Timeline
Suggested order of implementation:
- Essential documentation (README, docstrings)
- Basic testing infrastructure
- Code quality tools
- Examples and tutorials
- Community resources
- Advanced features (benchmarking, automation)
Related Resources
/label documentation
/label enhancement
/label good first issue
Metadata
Metadata
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request