Transform vague commit messages into clear, convention-compliant professional messagesβautomatically.
Nova is a production-grade command-line utility that leverages AI to automatically enhance and standardize Git commit messages. It ensures developers maintain clarity, consistency, and adherence to established conventions like Conventional Commits.
- π€ AI-Powered Enhancement - Transforms vague messages using OpenAI or Ollama
- π Convention Enforcement - Automatic Conventional Commits compliance
- π Git Integration - Seamless hook-based automation
- π Dual Mode - Cloud (OpenAI) and offline (Ollama) support
- β‘ Lightning Fast - Sub-2-second response times
- π‘οΈ Production Ready - Robust error handling and logging
This repository contains comprehensive documentation for understanding, developing, and contributing to Nova:
| Document | Description | Audience |
|---|---|---|
| PROJECT_OVERVIEW | High-level project vision and overview | All stakeholders |
| ARCHITECTURE | Detailed system architecture and design | Developers, architects |
| PROJECT_STRUCTURE | Complete folder structure and organization | Developers |
- New to the project? Start with PROJECT_OVERVIEW
- Want to understand the design? Read ARCHITECTURE
- Planning to contribute? See PROJECT_STRUCTURE and CONTRIBUTING.md
- Looking for examples? Check docs/examples/
npm install -g nova-commit# Improve a single commit message
nova improve "fixed the bug in login"
# Output:
# β fix(auth): resolve login authentication bug# Setup automatic enhancement
nova setup
nova install-hooks
# Now commit normally - Nova enhances automatically!
git commit -m "add user feature"
# [nova] Enhanced: feat(user): add user registration featureCurrent Phase: Setup & Initial Development β
- β Project requirements and architecture design
- β Production folder structure
- β Comprehensive documentation
- β Development environment setup
- π Core CLI implementation
- π AI provider integrations
- π Message processing logic
- β³ Git hook integration
- β³ Testing infrastructure
- β³ Beta release
- Node.js v18 or higher
- Git (for hook integration)
- AI Provider: OpenAI API key OR Ollama (for offline mode)
git commit -m "fix bug"
# Commit message is vague and non-standardgit commit -m "fix bug"
[nova] Enhanced: fix(auth): resolve null pointer exception in user authentication
# Message is clear, formatted, and convention-compliantWe welcome contributions! Please see CONTRIBUTING.md for guidelines.
- Fork the repository
- Clone your fork:
git clone https://github.com/your-username/nova.git - Install dependencies:
npm install - Create a feature branch
- Make your changes
- Run tests:
npm test - Submit a pull request
- Core CLI functionality
- OpenAI integration
- Basic message improvement
- Unit tests
- Git hook integration
- Ollama (offline) support
- Conventional Commits validation
- Integration tests
- Documentation completion
- Performance optimization
- npm publication
- Community setup
- No Code Transmission: Only commit message text is sent to AI
- Local Option: Ollama mode keeps all data local
- API Key Protection: Secure environment variable handling
- Input Sanitization: Validation and length limits
- Runtime: Node.js v18+ (ES Modules)
- CLI: Commander.js
- AI: OpenAI SDK, Ollama
- Testing: Jest
- Logging: Winston
- Linting: ESLint, Prettier
MIT License - see LICENSE for details.
- Conventional Commits for the commit standard
- OpenAI for GPT models
- Ollama for local AI capabilities
Built with β€οΈ for developers who care about code quality
Nova is currently in active development. Documentation and features are subject to change.