awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
emicklei avatar

emicklei/go-restful

0
View on GitHub↗
5,111 stars·682 forks·Go·MIT·36 views

Go Restful

go-restful is a framework for building RESTful web services in Go. It functions as a toolkit for managing API endpoints, providing a request router that maps incoming HTTP requests to handler functions using path parameters and custom URL patterns.

The framework includes a data conversion layer that transforms Go structures into JSON or XML formats for request and response bodies. It also provides a system for organizing related web services into containers to manage endpoint prefixing and shared configuration.

The project covers request lifecycle management through middleware filters for validation and authentication, as well as the management of cross-origin resource sharing headers. Additional capabilities include payload compression using gzip or deflate and panic recovery middleware to return standardized error responses.

Features

  • RESTful API Development - Provides a framework for building scalable web services following REST architectural patterns.
  • API Payload Serializers - Transforms Go structures into JSON or XML formats for API request and response bodies.
  • Data Serialization - Encodes and serializes Go data structures into JSON or XML for client-server transmission.
  • Payload Serialization - Provides bidirectional serialization of request and response bodies into JSON or XML formats.
  • HTTP Request Routers - Ships a routing system that maps network requests to specific application handlers.
  • Request Routing - Provides a dedicated routing system for mapping HTTP requests to Go handler functions.
  • HTTP Request Routing - Maps incoming HTTP requests to handler functions using path parameters and URL patterns.
  • Request Interception Middleware - Executes a chain of middleware filters to process HTTP traffic before it reaches the handler.
  • Request Middleware - Implements middleware filters to intercept, validate, and modify HTTP requests and responses.
  • HTTP Middleware Pipelines - Provides HTTP middleware pipelines for intercepting and transforming request-response flows.
  • RESTful API Frameworks - Implements a comprehensive framework for building and managing RESTful web services in Go.
  • RESTful Services - Provides a toolkit for managing RESTful endpoints, CORS, and payload compression.
  • Pattern-Based Route Mapping - Routes requests to specific functions by matching URL paths against templates and parameters.
  • Pluggable Serializers - Supports interchangeable serialization strategies via registered readers and writers for different data formats.
  • Endpoint Grouping - Allows organizing related web services into containers for logical structure and endpoint prefixing.
  • Route Grouping - Organizes API endpoints into logical hierarchies with shared configuration and middleware.
  • API Frameworks - Declarative framework for building RESTful APIs.
  • Routing and Middleware - Package for building REST-style web services.
  • Server Frameworks - Declarative framework for building RESTful APIs in Go.

Star history

Star history chart for emicklei/go-restfulStar history chart for emicklei/go-restful

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does emicklei/go-restful do?

go-restful is a framework for building RESTful web services in Go. It functions as a toolkit for managing API endpoints, providing a request router that maps incoming HTTP requests to handler functions using path parameters and custom URL patterns.

What are the main features of emicklei/go-restful?

The main features of emicklei/go-restful are: RESTful API Development, API Payload Serializers, Data Serialization, Payload Serialization, HTTP Request Routers, Request Routing, HTTP Request Routing, Request Interception Middleware.

Which projects share features with emicklei/go-restful?

Projects with overlapping indexed features include: salvo-rs/salvo — Salvo is a comprehensive Rust web framework for building asynchronous HTTP servers and web applications. It features a… restify/node-restify — Restify is a Node.js web framework designed for building scalable RESTful web services and APIs. It provides a… gorilla/mux — This project is a request router and web framework for the Go programming language. It provides a toolkit for matching… gin-gonic/examples — This repository is a collection of implementation patterns, tutorial code, and practical examples for building web… flask-restful/flask-restful — Flask-restful is a toolkit for building structured web services using Flask. It functions as a resource-based routing… falconry/falcon — Falcon is a minimalist Python web API framework and high-performance microservices framework. It serves as a…

Projects sharing features with Go Restful

These projects share indexed features with Go Restful. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • salvo-rs/salvosalvo-rs avatar

    salvo-rs/salvo

    4,376View on GitHub↗

    Salvo is a comprehensive Rust web framework for building asynchronous HTTP servers and web applications. It features a hierarchical web router that uses a tree-based structure to map requests to handlers and an asynchronous middleware pipeline based on the onion model for request and response pre- and post-processing. The framework is distinguished by its native support for modern network protocols, including a QUIC-based HTTP/3 implementation alongside HTTP/1 and HTTP/2. It includes an integrated OpenAPI documentation generator that extracts schemas directly from handler signatures to produc

    Rustasyncframeworkhttp-server
    View on GitHub↗4,376
  • restify/node-restifyrestify avatar

    restify/node-restify

    10,686View on GitHub↗

    Restify is a Node.js web framework designed for building scalable RESTful web services and APIs. It provides a server-side environment for creating HTTP network services with integrated routing and request handling. The framework utilizes a middleware-based architecture to process incoming requests and manage responses. This approach supports the construction of web interfaces that follow standard architectural principles to deliver data to clients. The system covers a broad range of backend engineering capabilities, including route-based request dispatching, schema-based request validation,

    JavaScript
    View on GitHub↗10,686
  • gorilla/muxgorilla avatar

    gorilla/mux

    21,832View on GitHub↗

    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

    Gogogolanggorilla
    View on GitHub↗21,832
  • gin-gonic/examplesgin-gonic avatar

    gin-gonic/examples

    4,537View on GitHub↗

    This repository is a collection of implementation patterns, tutorial code, and practical examples for building web applications with the Gin framework in Go. It serves as a guide for learning how to structure Go web servers, specifically focusing on mapping URL paths to handler functions and managing request flow. The project provides demonstrations of middleware implementation for tasks such as authentication, logging, and rate limiting. It also includes reference examples for developing REST APIs, with a focus on structuring data and sending JSON responses to clients.

    Gogingin-gonicgo
    View on GitHub↗4,537
Compare all 30 related projects→