Skip to main content

Overview

The Horse community has created numerous third-party middleware packages that extend the framework’s capabilities. These middlewares are maintained by individual developers and organizations.
Third-party middlewares may have different levels of maintenance and support. Always check the repository for the latest updates and compatibility information.

Available Middlewares

bittencourtthulio/etag

ETag header generation for caching support. Features:
  • Automatic ETag generation
  • HTTP 304 Not Modified responses
  • Caching optimization

bittencourtthulio/paginate

Pagination middleware for list responses. Features:
  • Easy pagination implementation
  • Configurable page size
  • Pagination metadata in responses

bittencourtthulio/cachecontrol

Cache-Control header management. Features:
  • Cache-Control header configuration
  • Max-age, no-cache, and other directives
  • Route-specific caching rules

gabrielbaltazar/gbswagger

Swagger/OpenAPI documentation generation. Features:
  • Automatic API documentation
  • Swagger UI integration
  • OpenAPI 3.0 specification

willhubner/socketIO

Socket.IO support for real-time communication. Features:
  • Real-time bidirectional communication
  • Socket.IO protocol support
  • Event-based messaging

dliocode/ratelimit

Rate limiting middleware to prevent abuse. Features:
  • Request rate limiting
  • Configurable time windows
  • Per-IP or per-user limits
  • Custom response for exceeded limits

dliocode/slowdown

Progressively slow down responses after limit. Features:
  • Gradual response slowdown
  • Alternative to hard rate limiting
  • Configurable delay increments

giorgiobazzo/upload

File upload handling middleware. Features:
  • Multipart file upload handling
  • File size limits
  • File type validation

dliocode/query

Advanced query string parsing. Features:
  • Enhanced query parameter parsing
  • Nested object support
  • Array parameter handling

CarlosHe/healthcheck

Health check endpoint for monitoring. Features:
  • Standard health check endpoint
  • Custom health checks
  • Service status monitoring

CarlosHe/staticfiles

Static file serving middleware. Features:
  • Serve static files from directory
  • MIME type detection
  • Caching support

CachopaWeb/horse-server-static

Alternative static file server. Features:
  • Static content serving
  • Directory browsing (optional)
  • Index file support

arvanus/horse-exception-logger

Enhanced exception logging. Features:
  • Detailed exception logging
  • Stack trace capture
  • Custom log formatters

claudneysessa/Horse-CSResponsePagination

Advanced pagination with custom response format. Features:
  • Standardized pagination response
  • Metadata inclusion
  • Navigation links

claudneysessa/Horse-XSuperObjects

XSuperObject JSON library integration. Features:
  • XSuperObject JSON serialization
  • Alternative to Jhonson
  • High performance JSON processing

andre-djsystem/horse-bearer-auth

Bearer token authentication. Features:
  • Bearer token validation
  • Custom validation callback
  • Authorization header parsing

andre-djsystem/horse-manipulate-request

Request manipulation utilities. Features:
  • Modify request data
  • Request transformation
  • Pre-processing utilities

andre-djsystem/horse-manipulate-response

Response manipulation utilities. Features:
  • Modify response data
  • Response transformation
  • Post-processing utilities

antoniojmsjr/Horse-IPGeoLocation

IP geolocation lookup. Features:
  • IP address geolocation
  • Country/region detection
  • Integration with geolocation APIs

antoniojmsjr/Horse-XMLDoc

XML document handling. Features:
  • XML request/response handling
  • XML serialization/deserialization
  • Alternative to JSON

isaquepinheiro/horse-jsonbr

JSONBr library integration. Features:
  • JSONBr serialization
  • Brazilian Portuguese locale support
  • Date/time formatting

IagooCesaar/Horse-JsonInterceptor

JSON request/response interception. Features:
  • Intercept JSON data
  • Transform JSON payloads
  • Validation and sanitization

dliocode/horse-datalogger

DataLogger integration for advanced logging. Features:
  • Advanced logging capabilities
  • Multiple output providers
  • Structured logging

marcobreveglieri/horse-prometheus-metrics

Prometheus metrics exporter. Features:
  • Prometheus metrics endpoint
  • Request/response metrics
  • Custom metrics support

weslleycapelari/horse-documentation

API documentation generator. Features:
  • Automatic documentation generation
  • Custom templates
  • Multiple output formats

Compatibility Matrix

MiddlewareDelphiLazarus
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✔️✔️
claudneysessa/Horse-CSResponsePagination✔️
claudneysessa/Horse-XSuperObjects✔️
andre-djsystem/horse-bearer-auth✔️✔️
andre-djsystem/horse-manipulate-request✔️✔️
andre-djsystem/horse-manipulate-response✔️✔️
antoniojmsjr/Horse-IPGeoLocation✔️
antoniojmsjr/Horse-XMLDoc✔️
isaquepinheiro/horse-jsonbr✔️
IagooCesaar/Horse-JsonInterceptor✔️
dliocode/horse-datalogger✔️
marcobreveglieri/horse-prometheus-metrics✔️
weslleycapelari/horse-documentation✔️

Contributing Your Middleware

If you’ve created a Horse middleware and want it listed here:
  1. Create a pull request to the Horse repository
  2. Add your middleware to the README.md
  3. Include:
    • Middleware name and description
    • Repository link
    • Delphi/Lazarus compatibility
    • Basic usage example

See Also

Build docs developers (and LLMs) love