Coder Social home page Coder Social logo

zetavg / railsrelaytodomvc Goto Github PK

View Code? Open in Web Editor NEW
14.0 2.0 4.0 225 KB

TodoMVC demonstration of Rails + GraphQL + Relay

Home Page: https://rails-relay-todomvc.herokuapp.com/

Ruby 19.56% JavaScript 74.85% CoffeeScript 0.08% CSS 3.34% HTML 2.18%
rails graphql relay relay-modern

railsrelaytodomvc's Introduction

Rails + Relay TodoMVC Build Status

This project demonstrates to expose an Relay-compatible GraphQL API with graphql-ruby from an existing Rails app, and to build a React app with Relay which uses the GraphQL API.

Setup

bin/setup

Running

In development, you'll need to run bin/rails server with bin/webpack-dev-server to have the app/javascript/packs/*.js files be compiled as you make changes, and bin/relay-compiler if you change the GraphQL schema or any graphql tags in any JavaScript files.

If you'd rather not have to run the two processes separately by hand, you can use Foreman:

gem install foreman
foreman start

The default port of the Rails Server is 5000.

TODOs

  • Refactor code
  • Use cached data while switching the todo items filter (facebook/relay#2006 explains this behavior, needs to dig on more about GC of Relay Modern Store)
  • Fix all optimistic updates
  • Use Relay Subscriptions with Action Cable to do realtime update
  • Resolve Rails n+1 query problem while executing an GraphQL query
  • Let the user manage multiple todo lists
  • Implement user authentication
  • Build a React Native app with the same JavaScript codebase

railsrelaytodomvc's People

Contributors

zetavg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

railsrelaytodomvc's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.