PHPackages                             velt/http - 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. velt/http

ActiveLibrary[HTTP &amp; Networking](/categories/http)

velt/http
=========

HTTP layer for Velt framework

v0.1.1(yesterday)04↑2900%2[7 issues](https://github.com/Velt-PHP/veltphp-http/issues)MITPHPPHP ^8.2

Since Jun 18Pushed yesterdayCompare

[ Source](https://github.com/Velt-PHP/veltphp-http)[ Packagist](https://packagist.org/packages/velt/http)[ RSS](/packages/velt-http/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (2)Versions (2)Used By (0)

Sous-module 02 - HTTP Routing
=============================

[](#sous-module-02---http-routing)

Mission
-------

[](#mission)

Ce sous-module fournit la couche HTTP minimale de Velt : requetes, reponses, routeur, dispatch et middleware simple.

Il doit permettre au MVP de servir une page Web, une response JSON et les endpoints de preview.

Apres audit, HTTP doit aussi poser des contrats solides pour que le framework puisse evoluer vers redirect, stream, file download, erreurs JSON/HTML et middleware propre. Le Module 1 n'implemente pas tout, mais il doit definir les points d'extension maintenant.

Perimetre
---------

[](#perimetre)

Inclus :

- `Request`
- `Response`
- `JsonResponse`
- `ResponseInterface`
- `ResponsableInterface` ou normalizer equivalent ;
- `Router`
- routes GET/POST ;
- parametres dynamiques comme `/api/preview/{id}` ;
- pipeline middleware explicite ;
- session minimale pour CSRF si `Form::csrf()` est expose par UI ;
- erreurs HTTP propres en HTML ou JSON.

Exclus :

- ORM ;
- moteur UI ;
- serveur Web avance ;
- authentification complete.

Comment tester sans UI, Preview ou Database
-------------------------------------------

[](#comment-tester-sans-ui-preview-ou-database)

HTTP doit se tester avec des handlers fake.

- Pour tester une page UI sans `veltphp/ui`, creer une classe fake qui implemente `RenderableInterface` et retourne une string HTML.
- Pour tester un retour JSON, utiliser un tableau PHP simple et verifier le header `Content-Type`.
- Pour tester le pipeline, creer deux middlewares fake qui ajoutent un header ou bloquent la requete.
- Pour tester les erreurs, forcer une route absente, une methode non autorisee et une exception controller.
- Pour tester CSRF sans module session complet, utiliser un `SessionStoreInterface` fake en memoire.

Le module HTTP ne doit pas importer les composants UI reels dans ses tests unitaires. L'integration avec UI se fait dans les tests du sous-module 07.

Issues
------

[](#issues)

- [Issue 01 - Creer Request et Response](issues/01-creer-request-response.md)
- [Issue 02 - Implementer le routeur MVP](issues/02-implementer-routeur-mvp.md)
- [Issue 03 - Ajouter middleware et dispatch controller](issues/03-ajouter-middleware-dispatch-controller.md)
- [Issue 04 - Normaliser les retours controller et erreurs HTTP](issues/04-normaliser-retours-controller-erreurs-http.md)
- [Issue 05 - Definir ResponseInterface et types de response futurs](issues/05-definir-responseinterface-types-response.md)
- [Issue 06 - Implementer Pipeline middleware explicite](issues/06-implementer-pipeline-middleware-explicite.md)
- [Issue 07 - Ajouter session et CSRF minimal](issues/07-session-csrf-minimal.md)

###  Health Score

39

—

LowBetter than 85% of packages

Maintenance100

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 76.9% 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

Unknown

Total

1

Last Release

1d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/233258904?v=4)[Kaluba sierra](/maintainers/skylore300-hash)[@skylore300-hash](https://github.com/skylore300-hash)

---

Top Contributors

[![skylore300-hash](https://avatars.githubusercontent.com/u/233258904?v=4)](https://github.com/skylore300-hash "skylore300-hash (10 commits)")[![KeranTyrinthe](https://avatars.githubusercontent.com/u/177726053?v=4)](https://github.com/KeranTyrinthe "KeranTyrinthe (3 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/velt-http/health.svg)

```
[![Health](https://phpackages.com/badges/velt-http/health.svg)](https://phpackages.com/packages/velt-http)
```

###  Alternatives

[php-http/cache-plugin

PSR-6 Cache plugin for HTTPlug

25025.5M80](/packages/php-http-cache-plugin)[illuminate/http

The Illuminate Http package.

11937.2M6.5k](/packages/illuminate-http)[rdkafka/rdkafka

A PHP extension for Kafka

2.2k20.0k1](/packages/rdkafka-rdkafka)[httpsoft/http-message

Strict and fast implementation of PSR-7 and PSR-17

87930.4k112](/packages/httpsoft-http-message)[mezzio/mezzio-router

Router subcomponent for Mezzio

265.3M83](/packages/mezzio-mezzio-router)[serpapi/google-search-results-php

Get Google, Bing, Baidu, Ebay, Yahoo, Yandex, Home depot, Naver, Apple, Duckduckgo, Youtube search results via SerpApi.com

69122.6k](/packages/serpapi-google-search-results-php)

PHPackages © 2026

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