{"id":14955700,"url":"https://github.com/shftco/rails-api-boilerplate","last_synced_at":"2025-07-30T21:33:20.876Z","repository":{"id":40697475,"uuid":"458239836","full_name":"shftco/rails-api-boilerplate","owner":"shftco","description":"Ruby on Rails API boilerplate","archived":false,"fork":false,"pushed_at":"2023-01-07T15:44:24.000Z","size":342,"stargazers_count":74,"open_issues_count":3,"forks_count":8,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-05T04:03:40.733Z","etag":null,"topics":["boilerplate","devise-auth","doorkeeper","rails","rails-api","rails-application","rails-boilerplate","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shftco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-11T15:26:46.000Z","updated_at":"2024-12-03T11:00:10.000Z","dependencies_parsed_at":"2023-02-07T13:46:43.932Z","dependency_job_id":null,"html_url":"https://github.com/shftco/rails-api-boilerplate","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/shftco/rails-api-boilerplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shftco%2Frails-api-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shftco%2Frails-api-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shftco%2Frails-api-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shftco%2Frails-api-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shftco","download_url":"https://codeload.github.com/shftco/rails-api-boilerplate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shftco%2Frails-api-boilerplate/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267944975,"owners_count":24170214,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boilerplate","devise-auth","doorkeeper","rails","rails-api","rails-application","rails-boilerplate","ruby"],"created_at":"2024-09-24T13:11:35.077Z","updated_at":"2025-07-30T21:33:20.820Z","avatar_url":"https://github.com/shftco.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"![build \u0026 test \u0026 quality](https://github.com/cousins-factory/rails-api-boilerplate/actions/workflows/main.yml/badge.svg?branch=main)\n[![Ruby Style Guide](https://img.shields.io/badge/code_style-rubocop-brightgreen.svg)](https://github.com/rubocop/rubocop)\n![Ruby Version](https://img.shields.io/badge/ruby_version-3.1.2-blue.svg)\n![Rails Version](https://img.shields.io/badge/rails_version-7.0.4-c52f24.svg)\n[![Swagger documentation](https://img.shields.io/badge/swagger_documentation-84e92c.svg?\u0026logo=swagger\u0026logoColor=black)](docs/SWAGGER.md)\n\n# Rails API Boilerplate\n![cover](docs/cover.png)\n\n# How to Works?\n```mermaid\nflowchart TD\n  R[Request] --\u003e C[Application Controller]\n  C --\u003e O[Application Operation]\n  O -- Validate Params --\u003e AC[Application Contract]\n  O -- Application Contract returned success?--\u003e S[Application Service]\n  AC -- Validation success? --\u003e O[Application Operation]\n  AC -- Validation failed? --\u003e E[Contract Errors]\n  E --\u003e RE\n  S -- Process successful? --\u003e RS[Resource]\n  S -- Process failed? --\u003e OE[Resource Errors]\n  OE --\u003e RE[Response]\n  RS --\u003e RE\n  RE -- Returns --\u003e C\n```\n\n# Documentations\n- [Swagger](docs/SWAGGER.md)\n- [Service generator](docs/SERVICE.md)\n- [Contract generator](docs/CONTRACT.md)\n- [Search \u0026 Filter \u0026 Sort](docs/RANSACK.md)\n\n# Installation\n## Prerequisites\n- [Ruby](https://rvm.io/)\n- [PostgreSQL](https://www.postgresql.org/)\n- [Redis](https://redis.io/)\n\n## Installation\n- Install GEM dependencies:\n  ```bash\n  bundle install\n  ```\n\n- Create database, migrate tables and run the seed data:\n  ```bash\n  rails db:create\n  rails db:migrate\n  rails db:seed\n  ```\n\n- If you are setting up again, when you already have previous databases:\n  ```bash\n  rails db:reset\n  ```\n  `reset` is equivalent of `rails db:drop \u0026 rails db:setup`.\n\n-  Run the server\n   ```bash\n   ./bin/dev\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshftco%2Frails-api-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshftco%2Frails-api-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshftco%2Frails-api-boilerplate/lists"}