Contributing & License

Contributing & License

Internals

This section refers to the Hateoas internals, providing documentation about hidden parts of this library. This is not always relevant for end users, but interesting for developers or people interested in learning how things work under the hood.

The library's architecture consists of several key components:

  • Configuration: Handles the configuration of relations through annotations, XML, or YAML
  • Serializer: Hooks into JMS Serializer to add hypermedia links and embedded resources
  • Expression Language: Evaluates dynamic expressions for URIs and resource inclusion
  • URL Generation: Generates URLs from route names and parameters
  • Metadata: Collects and caches metadata about configured relations

Contributing

See CONTRIBUTING file.

When contributing to Hateoas, please:

  • Follow the existing code style
  • Add tests for new features
  • Update documentation as needed
  • Submit pull requests against the main branch

Running the Tests

Install the Composer dev dependencies:

php composer.phar install --dev

Then, run the test suite using PHPUnit:

bin/phpunit

License

Hateoas is released under the MIT License. See the bundled LICENSE file for details.