Thank you for your interest in contributing to NIKAME! This document outlines the process for proposing changes and the standards we maintain.
-
Clone the repository:
git clone https://github.com/nikame-dev/nikame.git cd nikame -
Create a virtual environment:
python -m venv .venv source .venv/bin/activate -
Install dependencies:
pip install -e ".[dev,cloud,ml]" pre-commit install
To maintain high code quality, NIKAME enforces strict standards:
- Linting & Formatting: We use
ruff(line-length: 88). - Type Safety: We use
mypywith--strict. - Testing: All new features must include unit tests.
Run these before opening a Pull Request:
ruff check .
mypy nikame
pytest tests/unit- Branching: Create a feature branch from
main. - Implementation: Ensure your code follows the standards above.
- Commit Messages: Use descriptive, imperative commit messages.
- CI Checks: Every PR triggers the primary CI workflow. All checks (lint, types, tests) must pass before merge.
- Review: A maintainer will review your PR. Expect feedback!
By contributing, you agree that your contributions will be licensed under the Apache-2.0 License.