Compojure is a routing library for Ring web applications that maps HTTP requests to handler functions using composable route definitions. It serves as a middleware component for the Ring ecosystem, directing web traffic to specific application logic by matching incoming request methods and paths against defined URI patterns.
The main features of weavejester/compojure are: HTTP Request Routing, HTTP Routers, Route Pattern Matching, Routing Composition, Route-Based Modularization, HTTP Request Handling, Request Middleware, Request Routing.
Open-source alternatives to weavejester/compojure include: go-chi/chi — Chi is a lightweight, idiomatic router and middleware framework for building web services in Go. It is designed to… gorilla/mux — This project is a request router and web framework for the Go programming language. It provides a toolkit for matching… go-martini/martini — Martini is a web framework for the Go programming language that provides a toolkit for building web applications. It… kataras/iris — Iris is a high-performance web framework and API toolkit for the Go programming language. It provides the… ninenines/cowboy — Cowboy is a high-performance HTTP server for Erlang and OTP. It is designed to handle web traffic with low memory… webpy/webpy — web.py is a minimal Python web framework that provides the core components needed to build web applications: URL…
Chi is a lightweight, idiomatic router and middleware framework for building web services in Go. It is designed to integrate directly with the standard library, providing a set of utilities for managing HTTP request routing, context propagation, and modular service composition. The project distinguishes itself through a radix-tree-based routing system that supports recursive nesting, allowing developers to mount independent sub-routers onto specific path prefixes. This hierarchical structure enables the creation of organized, modular applications where request handlers are grouped and managed
This project is a request router and web framework for the Go programming language. It provides a toolkit for matching incoming HTTP network requests to specific handler functions by evaluating criteria such as URL paths, request methods, headers, and hostnames. The framework distinguishes itself through its flexible matching capabilities, which include support for regular expressions and dynamic variable extraction from URL segments. It allows developers to organize routes into logical hierarchies, share common path prefixes, and maintain a central registry of named routes to facilitate prog
Martini is a web framework for the Go programming language that provides a toolkit for building web applications. It functions as a routing engine and an HTTP middleware pipeline to map network requests to specific handler functions. The framework is distinguished by its dependency injection system, which automatically resolves and provides requested service types as arguments to handler functions. This allows for the decoupling of business logic from infrastructure by matching requested types against a registry of available services. The project covers a broad range of web capabilities, inc
Iris is a high-performance web framework and API toolkit for the Go programming language. It provides the infrastructure necessary to build HTTP/2 web applications, REST APIs, and MVC-based websites. The project distinguishes itself through a flexible architectural model that supports multiple isolated application instances within a single process and allows for binary-embedded asset loading to eliminate external filesystem dependencies. It features dynamic router hot-reloading and a pluggable view engine for rendering dynamic HTML content. The framework covers a broad range of capabilities,