PHPackages                             quickclack/rest-attribute-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. quickclack/rest-attribute-bundle

ActiveSymfony-bundle[HTTP &amp; Networking](/categories/http)

quickclack/rest-attribute-bundle
================================

Modern REST support for Symfony 6.4–7.2 using attributes

v1.0.1(1y ago)04MITPHPPHP ^8.1CI failing

Since May 1Pushed 1y ago1 watchersCompare

[ Source](https://github.com/quickclack/rest-attribute-bundle)[ Packagist](https://packagist.org/packages/quickclack/rest-attribute-bundle)[ RSS](/packages/quickclack-rest-attribute-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)Dependencies (7)Versions (3)Used By (0)

Quickclack RestAttributeBundle
==============================

[](#quickclack-restattributebundle)

Modern REST support for Symfony 6.4–7.2 using attributes. This bundle simplifies the implementation of RESTful APIs by using PHP attributes for route parameters, making your Symfony controllers cleaner and easier to maintain.

Features
--------

[](#features)

- **Automatic parameter fetching** from query, request, or route.
- **Custom validation** of parameters using Symfony Validator.
- Support for Symfony versions **6.4–7.2**.

Installation
------------

[](#installation)

```
composer require quickclack/rest-attribute-bundle
```

Install the bundle via Composer:

After installation, add to config/bundles.php:
----------------------------------------------

[](#after-installation-add-to-configbundlesphp)

```
return [
    Quickclack\RestAttributeBundle\RestAttributeBundle::class => ['all' => true],
];
```

Symfony 6.4–7.2 Compatibility
-----------------------------

[](#symfony-6472-compatibility)

This bundle supports Symfony 6.4 through 7.2, so make sure you have a compatible Symfony version installed.

Usage
-----

[](#usage)

The bundle provides a simple way to fetch parameters from request queries and route parameters with automatic validation.

Example
-------

[](#example)

```
namespace App\Controller;

use Symfony\Component\HttpFoundation\JsonResponse;
use Quickclack\RestAttributeBundle\Attribute\RouteParam;
use Quickclack\RestAttributeBundle\Request\ParamFetcher;

class TestController
{
    #[Get('/api/test')]
    #[RouteParam(name: 'name', from: 'query', type: 'string')]
    #[RouteParam(name: 'age', from: 'query', type: 'int', default: 0, required: false)]
    public function testAction(ParamFetcher $fetcher): JsonResponse
    {
        return new JsonResponse([
            'name' => $fetcher->get('name'),
            'age' => $fetcher->get('age')
        ]);
    }
}
```

Testing
-------

[](#testing)

```
composer install
php bin/phpunit
```

License
-------

[](#license)

This bundle is licensed under the MIT License. See the LICENSE file for more details.

Changelog
---------

[](#changelog)

All notable changes to this project will be documented in the CHANGELOG.md.

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance48

Moderate activity, may be stable

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

382d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/54ec09178b99e106cdbbe38ed76830300b79ac160d5ca1c53b532f7a5a4342ff?d=identicon)[quickclack](/maintainers/quickclack)

---

Top Contributors

[![quickclack](https://avatars.githubusercontent.com/u/63925540?v=4)](https://github.com/quickclack "quickclack (9 commits)")

---

Tags

apisymfonyrestattributesSymfony Bundle

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/quickclack-rest-attribute-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/quickclack-rest-attribute-bundle/health.svg)](https://phpackages.com/packages/quickclack-rest-attribute-bundle)
```

###  Alternatives

[api-platform/core

Build a fully-featured hypermedia or GraphQL API in minutes!

2.6k48.1M236](/packages/api-platform-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
