Thank you for your interest in contributing! This document provides guidelines and information for contributors.
By participating in this project, you agree to abide by our Code of Conduct.
- Check if the bug has already been reported in Issues
- If not, create a new issue using the bug report template
- Include:
- Clear description of the bug
- Steps to reproduce
- Expected vs actual behavior
- Environment details (Node.js version, OS)
- Relevant logs or screenshots
- Check existing issues and discussions for similar suggestions
- Open a new issue using the feature request template
- Describe the problem your feature would solve
- Propose your solution and alternatives considered
- Fork the repository
- Create a feature branch from
main:git checkout -b feature/your-feature-name
- Make your changes following our coding standards
- Write or update tests as needed
- Run the test suite:
npm test npm run lint - Commit your changes using Conventional Commits:
git commit -m "feat: add new feature" git commit -m "fix: resolve issue with X" git commit -m "docs: update README"
- Push to your fork and submit a pull request
# Clone your fork
git clone https://github.com/YOUR_USERNAME/serverdatabase.git
cd serverdatabase
# Install dependencies
npm install
# Set up environment
cp .env.example .env
# Run migrations
npm run db:migrate
# Start development server
npm run dev- Use ES6+ features (ES Modules)
- Follow existing code style (enforced by ESLint and Prettier)
- Write meaningful variable and function names
- Add comments for complex logic
- Keep functions small and focused
# Lint code
npm run lint
# Fix lint issues
npm run lint:fix
# Format code
npm run format
# Run tests
npm test
# Run tests with coverage
npm run test:coverageWe use Conventional Commits:
feat:- New featurefix:- Bug fixdocs:- Documentation changesstyle:- Code style changes (formatting, semicolons)refactor:- Code refactoringtest:- Adding or updating testschore:- Maintenance tasks
Examples:
feat: add user profile endpoint
fix: resolve authentication token expiry issue
docs: update API documentation
refactor: simplify error handling middleware
- Keep PRs focused on a single feature or fix
- Update documentation if needed
- Ensure all tests pass
- Request review from maintainers
- Be responsive to feedback
Open a discussion or reach out to the maintainers.
Thank you for contributing!