Giter VIP home page Giter VIP logo

api-development-tools's Introduction

HTTP API Development Tools

Introduction

This is a collection of useful resources for building RESTful HTTP+JSON APIs. There are a lot of good tools and entire ecosystems out there! It can be overwhelming not knowing what options are available, so you can use this as a reference starting point.

Contributions are most welcome. Categories are also open to suggestions!

Table of Contents

API Specification Languages

API Specification Tools

  • Swagger Editor: An editor for designing Swagger specifications.
  • API Studio. Write, mock, and share your Swagger specifications online.
  • Dredd: Validate API documentation written in API Blueprint against its backend implementation.
  • APITransformer: Transform API Descriptions from/to various formats e.g., Swagger, API Blueprint, RAML, WADL, Google Discovery, I/O Docs.

API Frameworks

Ruby

  • rails-api: Rails for API only applications.
  • pliny: Opinionated template Sinatra app for writing APIs in Ruby.
  • grape: An opinionated micro-framework for creating REST-like APIs in Ruby.
  • ActiveModel::Serializer: Brings convention over configuration to your JSON generation.
  • rabl: Generate JSON and XML from any ruby object.
  • jbuilder: Create JSON structures via a Builder-style DSL.

Python

Javascript

  • hapi.js: Web and services application framework for Node.js.
  • Restify: Node.js REST framework specifically meant for web service APIs.
  • Express: Fast, unopinionated, minimalist web framework for Node.js.
  • sailsjs: Realtime MVC Framework for Node.js.
  • Actionhero - Multi-transport Node.js API server with integrated cluster capabilities and delayed tasks.
  • Baucis - To build
  • Koa - Next generation web framework for Node.js
  • Loopback - Node.js framework for creating APIs and easily connecting to backend data sources.
  • Seneca - A microservices toolkit for Node.js

Go

Scala

  • Colossus - I/O and microservice library for Scala.
  • Finatra - Fast, testable, Scala HTTP services built on Twitter-Server and Finagle.
  • Play - The high velocity web framework for Java and Scala.
  • Scalatra - Simple, accessible and free web micro-framework.
  • Skinny Micro - Micro-web framework to build servlet applications in Scala.
  • Spray - Open-source toolkit for building REST/HTTP-based integration layers on top of Scala and Akka.

Haskell

  • Scotty - Micro web framework inspired by Ruby's Sinatra, using WAI and Warp.
  • Yesod - The Haskell RESTful web framework.

Elixir

  • Phoenix - Framework for building HTML5 apps, API backends and distributed systems.
  • Plug - A specification and conveniences for composable modules between web applications.

Erlang

  • Cowboy - Small, fast, modular HTTP server written in Erlang.
  • Gen Microservice - This library solves the problem of implementing microservices with Erlang.
  • Mochiweb - Erlang library for building lightweight HTTP servers.

Postgres

  • PostgREST: Serve a RESTful API from any existing PostgreSQL database.

PHP

  • API Platform: API framework on top of Symfony with JSON-LD, Schema.org and Hydra support

API Client Library Tools

General

  • Swagger CodeGen: Generate client libraries automatically from a Swagger-compliant server.

Ruby

  • heroics: Ruby HTTP client for APIs represented with JSON schema.
  • blanket: A Ruby API wrapper.
  • nestful: Ruby HTTP/REST client.

API Documentation

  • Swagger UI: Dynamically generate documentation from a Swagger-compliant API.
  • Slate: Static site generated documentation for your API.
  • prmd: JSON Schema tooling: scaffold, verify, and generate documentation from JSON Schema documents.
  • Aglio: An API Blueprint renderer with theme support that outputs static HTML.
  • Apiary: Collaborative design, instant API mock, generated documentation, integrated code samples, debugging and automated testing.
  • Readme: API Documentation Hosting.
  • Embed curl: Embeddable curl commands on the web.
  • Gelato: Create developer portals for your API.

API Testing

API Design Guides

API Publishing

API Gateways

  • AWS API Gateway. Traffic management, authorization and access control, monitoring, and API version management.
  • API Umbrella: Proxy that sits in front of your APIs.
  • APIAxle: Proxy that sits in front of your APIs.
  • APIGrove: API manager built in Java on top of Fuse ESB.
  • APIUmbrella: API management platform
  • Apigee127: nodejs based API Gateway
  • Pushpin: Proxy for both request/response or streaming (long poll) of responses
  • Strongloop: nodejs based API Gateway
  • Fusio: PHP based open source API management platform
  • Camel - Empowers you to define routing and mediation rules in a variety of domain-specific languages, including a Java-based fluent API, Spring or Blueprint XML configuration files, and a Scala DSL.
  • HAProxy - Reliable, high Performance TCP/HTTP load balancer.
  • OpenResty - Fast web application server built on top of Nginx.
  • Tengine - A distribution of Nginx with some advanced features.
  • Tyk - Open-source, fast and scalable API gateway, portal and API management platform.
  • Vulcand - Programmatic load balancer backed by Etcd.
  • Zuul - An edge service that provides dynamic routing, monitoring, resiliency, security, and more.
  • Kong - An open-source management layer for APIs, delivering high performance and reliability.

API Monitoring

JSON Format Standards

Learning Resources

References

Contributing

Pull Requests are most welcome!

Please write a brief one-sentence summary when adding a new resource.

api-development-tools's People

Contributors

chriskapp avatar dotlouis avatar hashd avatar hlgr360 avatar kelp404 avatar yosriady avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.