Contributing to Grok One-Shot
We welcome contributions from the community! Whether you're fixing bugs, adding features, improving documentation, or sharing feedback, every contribution helps make Grok One-Shot better.
Ways to Contribute
🐛 Report Bugs
Found a bug? Help us fix it by providing detailed information:
- GitHub Issues - Report bugs with detailed reproduction steps
- Include your OS, Node.js version, and Grok One-Shot version
- Provide command output and error messages
- Share minimal code examples that reproduce the issue
💡 Suggest Features
Have an idea for a new feature or improvement?
- GitHub Discussions - Discuss feature ideas with the community
- Check existing issues to avoid duplicates
- Explain the use case and expected behavior
- Consider implementation complexity and backward compatibility
📖 Improve Documentation
Help make our documentation clearer and more comprehensive:
- Fix typos and grammatical errors
- Add examples and use cases
- Improve explanations of complex features
- Add missing documentation for new features
🔧 Code Contributions
Ready to dive into the code? Here's how to get started:
Development Setup
Prerequisites
- Node.js 16+ or Bun
- Git
- Your favorite code editor
Fork and Clone
# Fork the repository on GitHub, then clone your fork
git clone https://github.com/YOUR_USERNAME/grok-one-shot.git
cd grok-one-shot
# Add the original repo as upstream
git remote add upstream https://github.com/x-cli-team/grok-one-shot.git
Install Dependencies
# Using npm
npm install
# Using bun (recommended)
bun install
Development Workflow
# Create a feature branch
git checkout -b feature/your-feature-name
# Make your changes
# ...
# Test your changes
npm test
# Build the project
npm run build
# Commit your changes
git add .
git commit -m "feat: add your feature description"
# Push to your fork
git push origin feature/your-feature-name
Pull Request Process
- Update your fork with the latest changes from upstream
- Create a feature branch from the main branch
- Make your changes with clear, focused commits
- Test thoroughly to ensure nothing breaks
- Update documentation if needed
- Submit a pull request with a clear description
Code Guidelines
Code Style
- Follow existing code formatting and style
- Use TypeScript for type safety
- Write clear, descriptive variable and function names
- Add JSDoc comments for public APIs
Testing
- Write tests for new features and bug fixes
- Ensure all existing tests pass
- Test on multiple platforms when possible
- Include integration tests for user-facing features
Commit Messages
Follow conventional commit format:
feat: add new feature
fix: resolve bug in feature
docs: update documentation
test: add missing tests
refactor: improve code structure
Community Guidelines
Code of Conduct
- Be respectful and inclusive
- Welcome newcomers and help them get started
- Focus on constructive feedback
- Respect different perspectives and experience levels
Communication
- Discord - Real-time chat and questions
- GitHub Discussions - Feature discussions and Q&A
- GitHub Issues - Bug reports and feature requests
Recognition
Contributors are recognized in:
- GitHub contributors page
- Release notes for significant contributions
- Special thanks in documentation
- Community Discord channel
Getting Help
Need help with contributing? Reach out:
- Ask in Discord for real-time help
- Post in GitHub Discussions for detailed questions
- Tag maintainers in issues for urgent matters
Thank you for contributing to Grok One-Shot! 🚀