{"id":13879557,"url":"https://github.com/virtualshield/rails-graphql","last_synced_at":"2025-07-16T15:32:32.006Z","repository":{"id":39713176,"uuid":"266513081","full_name":"virtualshield/rails-graphql","owner":"virtualshield","description":"A fresh, new GraphQL server designed for Rails applications, emphasizing a natural, Ruby-like DSL.","archived":false,"fork":false,"pushed_at":"2024-03-18T23:58:07.000Z","size":2471,"stargazers_count":168,"open_issues_count":2,"forks_count":7,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-05-19T07:43:06.756Z","etag":null,"topics":["activerecord","graphql","rails","ruby"],"latest_commit_sha":null,"homepage":"https://rails-graphql.dev","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/virtualshield.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-24T09:57:13.000Z","updated_at":"2024-06-02T20:37:41.193Z","dependencies_parsed_at":"2024-01-08T23:41:08.968Z","dependency_job_id":"5c3d8733-2131-417c-a227-cd2d90a860a8","html_url":"https://github.com/virtualshield/rails-graphql","commit_stats":{"total_commits":221,"total_committers":9,"mean_commits":"24.555555555555557","dds":"0.21266968325791857","last_synced_commit":"a52aa9b40edfc5336c56b08ab51bdb645550ebc1"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/virtualshield%2Frails-graphql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/virtualshield%2Frails-graphql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/virtualshield%2Frails-graphql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/virtualshield%2Frails-graphql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/virtualshield","download_url":"https://codeload.github.com/virtualshield/rails-graphql/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226143895,"owners_count":17580245,"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","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":["activerecord","graphql","rails","ruby"],"created_at":"2024-08-06T08:02:25.160Z","updated_at":"2024-11-24T08:31:29.204Z","avatar_url":"https://github.com/virtualshield.png","language":"Ruby","readme":"\u003ca href=\"https://rails-graphql.dev/?utm_source=github\"\u003e\n  \u003cimg src=\"./docs/assets/images/github.png\" alt=\"Rails GraphQL - GraphQL meets RoR with the most Ruby-like DSL\" /\u003e\n\u003c/a\u003e\n\n[![Gem Version](https://badge.fury.io/rb/rails-graphql.svg)](https://rubygems.org/gems/rails-graphql)\n[![Tests](https://github.com/virtualshield/rails-graphql/actions/workflows/ci.yml/badge.svg)](https://github.com/virtualshield/rails-graphql/actions/workflows/ci.yml)\n\u003c!-- [![Code Climate](https://codeclimate.com/github/virtualshield/rails-graphql/badges/gpa.svg)](https://codeclimate.com/github/virtualshield/rails-graphql) --\u003e\n\u003c!--([![Test Coverage](https://codeclimate.com/github/virtualshield/rails-graphql/badges/coverage.svg)](https://codeclimate.com/github/virtualshield/rails-graphql/coverage))--\u003e\n\u003c!--([![Dependency Status](https://gemnasium.com/badges/github.com/virtualshield/rails-graphql.svg)](https://gemnasium.com/github.com/virtualshield/rails-graphql))--\u003e\n\n[Wiki](https://rails-graphql.dev/?utm_source=github) |\n[Bugs](https://github.com/virtualshield/rails-graphql/issues)\n\n# Description\n\n`rails-graphql` is a fresh new implementation of a GraphQL server, designed to be\nas close as possible to Rails architecture and interfaces, which implies that it has\nshortcuts, lots of syntax sugar, and direct connection with Rails features like\n**ActiveRecord** and **ActionCable**.\n\nThis gem has its **own parser**, written from scratch, using the\n**C-API of Ruby**, which empowers it with an outstanding performance.\nPlus, all the features provided were carefully developed so that everyone will feel\ncomfortable and able to apply in all application sizes and patterns.\n\n# 3 Simple Steps\n\n## Install\n\n```bash\n# Add the gem to your Gemfile\n$ bundle add rails-graphql\n# Then run the Rails generator\n$ rails g graphql:install\n```\n\n## Define\n\n```ruby\n# app/graphql/app_schema.rb\nclass GraphQL::AppSchema \u003c GraphQL::Schema\n  field(:welcome).resolve { 'Hello World!' }\nend\n```\n\n## Run\n\n```bash\n$ curl -d '{\"query\":\"{ welcome }\"}' \\\n       -H \"Content-Type: application/json\" \\\n       -X POST http://localhost:3000/graphql\n# {\"data\":{\"welcome\":\"Hello World!\"}}\n```\n\n# Features\n\n| Link | Description |\n| --- | --- |\n| [GraphQL Parser](https://rails-graphql.dev/guides/parser?utm_source=github) | Supporting the \u003ca href=\"https://spec.graphql.org/October2021/\" target=\"_blank\" rel=\"external nofollow\"\u003eOctober 2021\u003c/a\u003e spec |\n| [Schemas](https://rails-graphql.dev/guides/schemas?utm_source=github) | One or multiple under the same application or across multiple engines |\n| [Queries](https://rails-graphql.dev/guides/queries?utm_source=github) | 3 different ways to defined your queries, besides sources |\n| [Mutations](https://rails-graphql.dev/guides/mutations?utm_source=github) | 3 different ways to defined your mutations, besides sources |\n| [Subscriptions](https://rails-graphql.dev/guides/subscriptions?utm_source=github) | 3 different ways to defined your subscriptions, besides sources |\n| [Directives](https://rails-graphql.dev/guides/directives?utm_source=github) | 4 directives provided: `@deprecated`, `@skip`, `@include`, and `@specifiedBy`\u003cbr\u003eEvent-driven interface to facilitate new directives |\n| [Scalars](https://rails-graphql.dev/guides/scalars?utm_source=github) | All the spec scalars plus: `any`, `bigint`, `binary`, `date`, `date_time`, `decimal`, `json`, and `time` |\n| [Sources](https://rails-graphql.dev/guides/sources?utm_source=github) | A bridge between classes and GraphQL types and fields\u003cbr\u003eFully implemented for [ActiveRecord](https://rails-graphql.dev/guides/sources/active-record?utm_source=github) for `PostgreSQL`, `MySQL`, and `SQLite` databases |\n| [Generators](https://rails-graphql.dev/guides/generators?utm_source=github) | Rails generators for you to get start quickly |\n| [Shortcuts](https://rails-graphql.dev/guides/architecture#shortcuts?utm_source=github) | Several shortcuts through `::GraphQL` module to access classes within the gem |\n| [Type Map](https://rails-graphql.dev/guides/type-map?utm_source=github) | A centralized place where all the types are stored and can be resolved |\n| [Global ID](https://rails-graphql.dev/guides/global-id?utm_source=github) | All objects defined supports `.to_global_id`, or simply `.to_gid` |\n| [Subscriptions Provider](https://rails-graphql.dev/guides/subscriptions/providers?utm_source=github) | Current supporting only [ActionCable](https://rails-graphql.dev/guides/subscriptions/action-cable-provider?utm_source=github) provider and [Memory](https://rails-graphql.dev/guides/subscriptions/memory-store?utm_source=github) store |\n| [Introspection](https://rails-graphql.dev/guides/introspection?utm_source=github) | All necessary types for introspection with proper descriptions\u003cbr\u003ePlain text display of the schemas |\n| [Testing](https://rails-graphql.dev/guides/testing?utm_source=github) | Support to validate GraphQL documents and stub values before requests |\n| [Error Handling](https://rails-graphql.dev/guides/error-handling?utm_source=github) | Full support to `rescue_from` within schemas\u003cbr\u003eA gracefully backtrace display |\n\n# How to contribute\n\nTo start, simply fork the project.\n\nRun local tests using:\n```\n$ bundle install\n$ bundle exec rake compile\n$ bundle exec rake test\n```\nFinally, change the code and submit a pull request.\n\n## License\n\nCopyright © 2020-2023 VirtualShield LLC. See [The MIT License](MIT-LICENSE) for further\ndetails.\n","funding_links":[],"categories":["Ruby"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvirtualshield%2Frails-graphql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvirtualshield%2Frails-graphql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvirtualshield%2Frails-graphql/lists"}