Thank you for your interest in contributing to User Service! This document provides guidelines and instructions for contributing.
Before contributing, make sure you have the following installed:
-
Fork the repository
Click the "Fork" button on GitHub to create your own copy of the repository.
-
Clone your fork locally
git clone https://github.com/your-username/user.git cd user -
Set up the development environment
Follow the instructions in the README to set up Keycloak and the database.
-
Install pre-commit hooks
pre-commit install
-
Create a branch for your changes
git checkout -b feature/your-feature-name # or git checkout -b fix/your-bug-fix -
Make your changes
- Write clear, readable code
- Follow the existing code style
- Add tests for new functionality
- Update documentation if needed
-
Run the pre-commit hooks
pre-commit run --all-files
-
Commit your changes
Write clear and meaningful commit messages:
git commit -m "feat: add user profile validation" git commit -m "fix: resolve authentication timeout issue"
-
Push your branch
git push origin feature/your-feature-name
-
Create a Pull Request
- Open a Pull Request against
main - Create the PR as a Draft until all checks pass
- Fill out the PR template completely
- Mark as "Ready for review" only when everything is complete
- Open a Pull Request against
-
Wait for review
A maintainer will review your PR. Please be patient and address any feedback provided.
- Use
cargo fmtfor formatting - Use
cargo clippyfor linting - Follow Rust naming conventions
- Keep functions small and focused
When reporting issues, please include:
- A clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, Rust version, etc.)
By contributing to this project, you agree that your contributions will be licensed under the Apache License 2.0.
Thanks for contributing to Beep!