0.0
The project is in a healthy, maintained state
ApiEngineBase is the Base API to handle all the things you don't want to for a Rails API only backend serving a Dedicated frontend
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

 Project Readme

ApiEngineBase

This is an API only base engine to build on top of. This Engine takes care of all Authentication, Token Refresh, and RBAC Roles so that you do not have to! For all applications, you can get right to work on implementing the code directly related to your project rather than dealing with the administrative overhead.

While this gem is heavily opinionated, everything can be configured to your liking.

Installation

Add this line to your application's Gemfile:

gem "api_engine_base"

And then execute:

$ bundle

Or install it yourself as:

$ gem install api_engine_base

Initializing ApiEngineBase

Please follow all steps in Initializing ApiEngineBase

Available Routes

For more info, check out Controllers ReadMe

Additionally, You can check out RSpec Integration Testing

Available Models

ApiEngineBase provides several Models at the in the root namespace. Core Models like User and UserSecret are readily available. Don't forget! You can add additional methods to these classes by opening them back up.

For more info, check out Models ReadMe

Authentication (JWT BearerToken)

Authentication ensures that we know which user is requesting the action. When the Engine is unable to authenticate, a 401 status code is returned.

For more info, check out Authentication ReadMe

Authorization (RBAC)

Authorization is only done after authentication. This is the act of ensuring that the user can perform the action it is requesting. Put differently, I know who you are, but I need to validate you have permissions to complete the action. When the engine is unable to authorize the user, a 403 status code is returned.

For more info, check out Authentication ReadMe

Sensitive Changes

For more info, check out Sensitive Routes

ServiceBase

ServiceBase is built on top of Interactor. The ServiceBase is the heart of all logic for ApiEngineBase. It includes Logging and enhanced ArgumentValidation that can directly return back to the API request.

For more info, check out ServiceBase ReadMe

License

The engine is available as open source under the terms of the MIT License.