Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/randikabanura/awesome-rails-api-gems
A collection of awesome Ruby Gems for Rails API development.
https://github.com/randikabanura/awesome-rails-api-gems
List: awesome-rails-api-gems
Last synced: 3 months ago
JSON representation
A collection of awesome Ruby Gems for Rails API development.
- Host: GitHub
- URL: https://github.com/randikabanura/awesome-rails-api-gems
- Owner: randikabanura
- Created: 2023-09-18T04:26:12.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-09-20T07:43:41.000Z (about 1 year ago)
- Last Synced: 2024-04-21T21:13:01.642Z (7 months ago)
- Homepage:
- Size: 7.81 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
- ultimate-awesome - awesome-rails-api-gems - A collection of awesome Ruby Gems for Rails API development. (Programming Language Lists / Ruby Lists)
README
# Awesome Rails API Gems [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
A collection of awesome Ruby Gems for Rails API development.The goal is to help every Rails developer to build an awesome Rails API services.
### Rails API Gem List
* [API Frameworks](#api-frameworks)
* [Authentication](#authentication)
* [Authorization](#authorization)
* [Serializers](#serializers)
* [HTTP clients](#http-clients)
* [Documentation](#documentation)
* [Admin Panel](#admin-panel)
* [File Uploaders](#file-uploaders)
* [Logging](#logging)
* [Coding Style](#coding-style)
* [Testing](#testing)## API Frameworks
* [Grape](https://github.com/ruby-grape/grape) - Microframework to create REST-ful APIs in Ruby.
* [Rails::API](https://github.com/rails-api/rails-api) - Rails for API-only applications.## Authentication
* [devise_token_auth](https://github.com/lynndylanhurley/devise_token_auth) - Token-based authentication for Rails JSON APIs. Designed to work with jToker and ng-token-auth.
* [devise-jwt](https://github.com/waiting-for-dev/devise-jwt) - JWT token authentication with devise and rails.
* [devise-api](https://github.com/nejdetkadir/devise-api) - This is a convenient way to add authentication to your Ruby on Rails application using the devise gem.
* [Doorkeeper](https://github.com/doorkeeper-gem/doorkeeper) - Doorkeeper is an OAuth 2 provider for Ruby on Rails / Grape.## Authorization
* [Pundit](https://github.com/varvet/pundit) - Minimal authorization through OO design and pure Ruby classes.
* [cancancan](https://github.com/CanCanCommunity/cancancan) - The authorization Gem for Ruby on Rails.
* [Rolify](https://github.com/RolifyCommunity/rolify) - Role management library with resource scoping.## Serializers
* [ActiveModel::Serializers](https://github.com/rails-api/active_model_serializers) - Serializer brings convention over configuration to your JSON generation.
* [Jbuilder](https://github.com/rails/jbuilder) - Jbuilder gives you a simple DSL for declaring JSON structures that beats massaging giant hash structures. This is particularly helpful when the generation process is fraught with conditionals and loops.
* [jsonapi-serializer](https://github.com/jsonapi-serializer/jsonapi-serializer) - A fast JSON:API serializer for Ruby (fork of Netflix/fast_jsonapi).
* [Blueprinter](https://github.com/procore-oss/blueprinter) - Simple, Fast, and Declarative Serialization Library for Ruby.
* [rabl](https://github.com/nesquena/rabl) - General ruby templating with json, bson, xml, plist and msgpack support.
* [Roar](https://github.com/trailblazer/roar) - Parse and render REST API documents using representers.## HTTP Clients
* [rest-client](https://github.com/rest-client/rest-client) - Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
* [Httparty](https://github.com/jnunemaker/httparty) - Makes http fun again! Ain't no party like a httparty, because a httparty don't stop.
* [Faraday](https://github.com/lostisland/faraday) - Simple, but flexible HTTP client library, with support for multiple backends.## Documentation
* [Grape Swagger](https://github.com/ruby-grape/grape-swagger) - Autogenerate documentation on Grape API.
* [Grape Swagger UI](https://github.com/swagger-api/swagger-ui) - Display documentation that is generated using Grape Swagger.
* [apiary](https://apiary.io/) - Work together to quickly design, prototype, document and test APIs.
* [apiblueprint](https://apiblueprint.org) - API Documentation with powerful tooling.## Admin Panel
* [ActiveAdmin](http://activeadmin.info) - ActiveAdmin is an administration framework for Ruby on Rails applications.
* [RailsAdmin](https://github.com/sferik/rails_admin) - RailsAdmin is a Rails engine that provides an easy-to-use interface for managing your data.
* [administrate](https://github.com/thoughtbot/administrate) - A Rails engine that helps you put together a super-flexible admin dashboard.
* [Trestle](https://github.com/TrestleAdmin/trestle) - A modern, responsive admin framework for Ruby on Rails.## File uploaders
* [Carrierwave](https://github.com/carrierwaveuploader/carrierwave) - Provides a simple and extremely flexible way to upload files from Ruby applications
* [Shrine](https://github.com/shrinerb/shrine) - Shrine is a toolkit for handling file attachments in Ruby applications## Logging
* [grape_logging](https://github.com/aserafin/grape_logging) - Request logging for Grape.
* [Lograge](https://github.com/roidrage/lograge) - An attempt to tame Rails' default policy to log everything.## Coding Style
* [RuboCop](https://github.com/bbatsov/rubocop) - Rubocop is a Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community [Ruby Style Guide](https://github.com/bbatsov/ruby-style-guide).
* [Rails Best Practice](https://github.com/railsbp/rails_best_practices) - Rails best practice is a code metric tool to check the quality of rails codes.
* [Metric Fu]( https://github.com/metricfu/metric_fu) - A fist full of code metrics.
* [Pronto](https://github.com/mmozuras/pronto) - Quick automated code review of your changes.## Testing
* [rspec-rails](https://github.com/rspec/rspec-rails) - Rspec-rails is a testing framework for Rails 5+.
* [factory_bot](https://github.com/thoughtbot/factory_bot) - A library for setting up Ruby objects as test data.
* [Faker](https://github.com/faker-ruby/faker) - A library for generating fake data such as names, addresses, and phone numbers.
* [Webmock](https://github.com/bblimke/webmock) - Library for stubbing and setting expectations on HTTP requests in Ruby.## Contribute
Contributions welcome! Read the [contribution guidelines](CONTRIBUTING.md) first.