Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# AGENTS — GotenbergBundle

## Project overview

- This project is a Symfony bundle to simplify communication with a
**Gotenberg API** to generate **PDFs** or **screenshots** from various
sources (URLs, HTML, Markdown, Office documents, etc.).

## Documentation

- User documentation is stored in the `docs/` directory.
- `docs/pdf/builders_api` and `docs/screenshot/builders_api` are generated by
`php ./docs/generate.php` command.

## Dev environment

- Run `composer install` to install PHP dependencies.
- Run `php ./docs/generate.php` to generate API documentation.

## Testing instructions

- Run `./vendor/bin/php-cs-fixer fix` to fix PHP code style issues.
- Run `./vendor/bin/phpunit` to run PHPUnit tests.
- Run `./vendor/bin/phpstan` analyse to run PHPStan checks.

## Testing instructions with dagger (recommended)

- Use [dagger >= v0.18.10](https://docs.dagger.io/install)
- Run `dagger call test --symfony-version '6.4.*' --php-version '8.2' phpunit`
for 'unit' test suite with specific symfony or / and php version.
- Run `dagger call test --symfony-version '6.4.*' --php-version '8.2' validate-dependencies`
to make sure all dependencies are explicitly added to composer.json.
- Run `dagger call generate-docs export --path ./docs` to generate the auto API
documentation for builders
- Run `dagger call test --symfony-version '6.4.*' --php-version '8.2' all` to
test with specific symfony / php versions
- Run `dagger call tests-matrix` to test with all supported version of both PHP
and Symfony
- Run `dagger call test all` to test all.

## PR instructions

- Use English in code, comments, commit messages and branch names.
- Code must be compatible with Symfony 6.4 and 7.x versions.
- Always run `php ./docs/generate.php` before committing.
- Always run `dagger call test all` before committing.