This example assumes that you have experience in creating Rails applications.
To create an API-only app in Rails 5, run
rails new name-of-app --api
Add active_model_serializers in Gemfile
gem 'active_model_serializers'
install bundle in terminal
bundle install
Set the ActiveModelSerializer
adapter to use :json_api
# config/initializers/active_model_serializer.rb
ActiveModelSerializers.config.adapter = :json_api
Mime::Type.register "application/json", :json, %w( text/x-json application/jsonrequest application/vnd.api+json )
Generate a new scaffold for your resource
rails generate scaffold Task name:string description:text
This will generate the following files:
Controller: app/controllers/tasks_controller.rb
Test: test/models/task_test.rb
test/controllers/tasks_controller_test.rb
Routes: resources :tasks added in routes.rb
Migration: db/migrate/_create_tasks.rb
Model: app/models/task.rb
Serializer: app/serializers/task_serializer.rb
Controller: app/controllers/tasks_controller.rb