Skip to content

Latest commit

 

History

History
186 lines (140 loc) · 4.01 KB

File metadata and controls

186 lines (140 loc) · 4.01 KB

Contributing

Thank you for considering contributing to Code Review Guardian!

Code of Conduct

This project follows the Contributor Covenant Code of Conduct. By participating, you are expected to uphold it. Please report unacceptable behavior to hectorfranco@nowo.tech.

Maintainer

This project is maintained by Héctor Franco Aceituno at Nowo.tech.

Development Setup

Using Docker (Recommended)

  1. Clone the repository:

    git clone https://github.com/nowo-tech/CodeReviewGuardian.git
    cd CodeReviewGuardian
  2. Start the Docker container:

    make up
  3. Install dependencies:

    make install
  4. Run tests:

    make test
  5. Open a shell in the container (optional):

    make shell

Without Docker

  1. Clone the repository:

    git clone https://github.com/nowo-tech/CodeReviewGuardian.git
    cd CodeReviewGuardian
  2. Install dependencies:

    composer install
  3. Run tests:

    composer test

Branching Strategy

We follow a simplified Git Flow. See docs/BRANCHING.md for full details.

Branch Purpose
main Production releases only
develop Development integration
feature/* New features
bugfix/* Bug fixes
hotfix/* Urgent production fixes

Pull Request Process

  1. Fork the repository
  2. Create a branch from develop:
    git checkout develop
    git pull origin develop
    git checkout -b feature/amazing-feature
  3. Make your changes
  4. Run tests and code style checks:
    make qa
    # or without Docker:
    composer qa
  5. Commit your changes following Conventional Commits:
    git commit -m 'feat(scope): add amazing feature'
  6. Push to the branch:
    git push origin feature/amazing-feature
  7. Open a Pull Request to develop (not main)

Coding Standards

  • Follow PSR-12 coding style
  • Add tests for new features
  • Update documentation as needed
  • Keep commits atomic and descriptive

Running Tests

With Docker

# Run all tests
make test

# Run tests with coverage
make test-coverage

# Check code style
make cs-check

# Fix code style
make cs-fix

# Run all QA checks
make qa

Without Docker

# Run all tests
composer test

# Run tests with coverage
composer test-coverage

# Check code style
composer cs-check

# Fix code style
composer cs-fix

Available Make Commands

Command Description
make up Start Docker container
make down Stop Docker container
make shell Open shell in container
make install Install Composer dependencies
make test Run PHPUnit tests
make test-coverage Run tests with code coverage
make cs-check Check code style (PSR-12)
make cs-fix Fix code style
make qa Run all QA checks
make clean Remove vendor and cache

Reporting Issues

When reporting issues, please include:

  • PHP version
  • Composer version
  • Framework (Symfony, Laravel, etc.)
  • Git provider (GitHub, GitLab, Bitbucket, etc.)
  • Operating system
  • Steps to reproduce
  • Expected vs actual behavior

Contact

For questions or suggestions, you can reach out to:

Git hooks (REQ-GIT-001)

Do not add Co-authored-by: Cursor or cursoragent@cursor.com trailers to commit messages.

make setup-hooks
make check-no-cursor-coauthor

make setup-hooks installs .githooks/commit-msg (or sets core.hooksPath to .githooks). Run it once per clone before your first commit. If CI fails because trailers are already on the remote, see GITHUB_CI.md (REQ-GIT-001) and run make strip-cursor-coauthor-from-history before git push --force-with-lease.