Thank you for considering contributing to SQLite Dashboard! This document outlines the process for contributing to this project.
- Fork the repository
- Clone your fork:
git clone https://github.com/<your-username>/sqlite_dashboard.git - Install dependencies:
bin/setup - Create a feature branch:
git checkout -b feature/amazing-feature
# Install dependencies
bin/setup
# Run tests
bundle exec rake test
# Run RuboCop
bundle exec rubocop
# Run all checks
bundle exec rake ci
# Start a console
bin/consoleWe use Minitest for testing. Run the test suite with:
bundle exec rake testWe use RuboCop for code style enforcement. Before submitting a PR, ensure your code passes:
bundle exec rubocopYou can auto-fix most issues with:
bundle exec rubocop -a- Write tests for your changes
- Ensure all tests pass:
bundle exec rake test - Ensure RuboCop passes:
bundle exec rubocop - Update CHANGELOG.md with your changes
- Commit your changes with a descriptive message
- Push to your fork:
git push origin feature/amazing-feature - Open a Pull Request
- Include a clear description of the changes
- Reference any related issues
- Include tests for new functionality
- Update documentation as needed
- Ensure CI passes
For maintainers only:
- Update version in
lib/sqlite_dashboard/version.rb - Update CHANGELOG.md
- Commit changes:
git commit -m "Release vX.Y.Z" - Create tag:
git tag vX.Y.Z - Push:
git push origin main --tags - Build gem:
gem build sqlite_dashboard.gemspec - Push to RubyGems:
gem push sqlite_dashboard-X.Y.Z.gem
Please use the GitHub issue tracker to report bugs or request features. Include:
- Ruby version
- Rails version
- SQLite Dashboard version
- Steps to reproduce (for bugs)
- Expected vs actual behavior
We welcome feature requests! Please:
- Check existing issues first
- Provide a clear use case
- Consider submitting a PR if you can implement it
Feel free to open an issue for questions or reach out to the maintainers.
Thank you for contributing! 🎉