Coder Social home page Coder Social logo

dunglas / awesome-rest Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marmelab/awesome-rest

0.0 2.0 0.0 108 KB

A collaborative list of great resources about RESTful API architecture, development, test, and performance

License: MIT License

awesome-rest's Introduction

Awesome REST

A collaborative list of great resources about RESTful API architecture, development, test, and performance. Feel free to contribute to this on-going list.

Design

Standards

  • JSON API - a standard for building APIs in JSON
  • RAML - a simple and succinct way to describe RESTful API
  • JSend - a simple specification that lays down some rules for how JSON responses from web servers should be formatted
  • OData - an open protocol to allow the creation and consumption of queryable and interoperable RESTful APIs. Quite complex.
  • HAL - a simple format that gives a consistent and easy way to hyperlink between resources in your API (see: HATEOAS).
  • JSON-LD JSON-LD Web site
  • Hydra A Vocabulary for Hypermedia-Driven Web APIs (W3C)

Clients

PHP Clients

  • Guzzle - HTTP client and framework for consuming RESTful web services
  • Buzz - another lightweight HTTP client
  • unirest for PHP - Simplified, lightweight HTTP client library

JavaScript Clients

  • restangular - AngularJS service to handle REST API properly and easily
  • restful.js - a JS client for interacting with server-side RESTful resources

Node.js Clients

Ruby Clients

  • RESTClient - Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
  • Spyke - Interact with REST services in an ActiveRecord-like manner.
  • excon - Usable, fast, simple Ruby HTTP 1.1. It works great as a general HTTP(s) client and is particularly well suited to usage in API clients.

Go Clients

  • gopencils - Small and simple package to easily consume REST APIs.

Servers

Directly On Top Of A RMDB

  • postgrest - serve a fully RESTful API directly from an existing PostgreSQL database
  • MySQL HTTP plugin - A simple REST-like / CRUD server for any MySQL database

Node.js

  • node-restify - a framework specifically meant for REST API
  • Sails.js - a Node.js Web framework embedding a command to generate automatically a REST API
  • mers - an Express service to expose Mongoose finders as RESTful API
  • Baucis - build scalable REST API based on your Mongoose entities
  • flatiron/resourceful - an isomorphic Resource engine for JavaScript
  • loopback - powerful Node.js framework for creating APIs and easily connecting to backend data sources

PHP

  • Microrest - a micro-web application providing a REST API on top of any relational database
  • Negotiation - A content negotiation library.
  • Drest - A library for exposing Doctrine entities as REST resource endpoints.
  • Restler - A lightweight framework to expose PHP methods as RESTful web API.
  • HAL - A Hypertext Application Language (HAL) builder library.
  • Apigility - An API builder built with Zend Framework 2.
  • phprest - specialized REST microframework for PHP
  • Hateoas - a PHP library to support implementing representations for HATEOAS REST web services

Symfony2

Python

  • django-tastypie - Creating delicious APIs for Django apps.
  • flask-restful - An extension for Flask that adds support for quickly building REST APIs.
  • flask-restless - A Flask extension for generating ReSTful APIs for database models defined with SQLAlchemy (or Flask-SQLAlchemy).
  • sandman - Automated REST APIs for existing database-driven systems.
  • restless - Framework agnostic REST framework based on lessons learned from TastyPie.
  • savory-pie - REST API building library (django, and others)

Ruby

  • Grape - An opinionated micro-framework for creating REST-like APIs in Ruby.

Go

  • go-json-rest - a thin layer on top of net/http that helps building RESTufmigl API easily
  • sleepy - a RESTful micro-framework written in Go
  • restit - A Go micro framework to help writing RESTful API integration test
  • go-relax - A framework of pluggable components to build RESTful API's
  • go-rest - A small and evil REST framework for Go
  • Goat - A minimalistic REST API server in Go
  • Resoursea - A REST framework for quickly writing resource based services.
  • Zerver - Zerver is a expressive, modular, feature completed RESTful framework.

Testing

Querying

  • httpie - a command line HTTP client, far more dev-friendly than curl
  • Postman REST Client - a Chrome extension essential to test manually REST API
  • resty - little command line REST client that you can use in pipelines (bash or zsh)
  • jq - command line JSON processor, to use in combination with a command-line HTTP client like cURL

Mocking

  • FakeRest - patch XMLHttpRequest to fake a REST API client-side
  • json-server - serve a REST API from fixture files using quick prototyping

Public REST APIs To Use In Tests

  • Public APIS - Explore The Largest API Directory In The Galaxy
  • Marvel Comics API - query characters, stories, events about Marvel superheroes
  • JSON Placeholder - a free online REST service that you can use whenever you need some fake data.

Documentation

  • Swagger - Documentation/querying web interface for REST APIs
  • API doc - Inline Documentation for RESTful web APIs

SaaS tools

  • Runscope - Automated API Monitoring & Testing
  • import.io Magic - Create a REST API from any website in one click
  • Apiary - Collaborative design, instant API mock, generated documentation, integrated code samples, debugging and automated testing.

Miscellaneous

  • ng-admin - add an AngularJS admin GUI to any RESTful API

awesome-rest's People

Contributors

amenophis avatar fzaninotto avatar gromnan avatar jpetitcolas avatar

Watchers

 avatar  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.