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 | ✔️ | ✔️ |
bittencourtthulio/cachecontrol | ✔️ | ❌ |
gabrielbaltazar/gbswagger | ✔️ | ❌ |
willhubner/socketIO | ✔️ | ❌ |
dliocode/ratelimit | ✔️ | ❌ |
dliocode/slowdown | ✔️ | ❌ |
giorgiobazzo/upload | ✔️ | ❌ |
dliocode/query | ✔️ | ❌ |
CarlosHe/healthcheck | ✔️ | ❌ |
CarlosHe/staticfiles | ✔️ | ❌ |
CachopaWeb/horse-server-static | ✔️ | ❌ |
arvanus/horse-exception-logger | ✔️ | ✔️ |
Horse
is free and open-source software licensed under the MIT License.