Horse is an Express inspired web framework for Delphi.
Designed to ease things up for fast development in a minimalist way and with high performance.
Installation is done using the boss install command:
$ boss install horse- (Optional) Install wizard
uses Horse;
begin
THorse.Get('/ping',
procedure(Req: THorseRequest; Res: THorseResponse; Next: TProc)
begin
Res.Send('pong');
end);
THorse.Listen(9000);
end.For a more maintainable middleware ecosystem, we've put official middlewares into separate repositories:
| Middleware | Delphi | Lazarus |
|---|---|---|
| horse/json | ✔️ | ✔️ |
| horse/basic-auth | ✔️ | ✔️ |
| horse/cors | ✔️ | ✔️ |
| horse/stream | ✔️ | ✔️ |
| horse/jwt | ✔️ | ❌ |
| horse/exception | ✔️ | ✔️ |
| horse/logger | ✔️ | ✔️ |
| horse/compression | ✔️ | ✔️ |
This is a list of middlewares that are created by the Horse community, please create a PR if you want to see yours!
| Middleware | Delphi | Lazarus |
|---|---|---|
| bittencourtthulio/etag | ✔️ | ✔️ |
| bittencourtthulio/paginate | ✔️ | ✔️ |
| gabrielbaltazar/gbswagger | ✔️ | ❌ |
| willhubner/socketIO | ✔️ | ❌ |
| dliocode/ratelimit | ✔️ | ❌ |
| dliocode/slowdown | ✔️ | ❌ |
| giorgiobazzo/upload | ✔️ | ❌ |
| dliocode/query | ✔️ | ❌ |
Horse is free and open-source software licensed under the MIT License.