GithubHelp home page GithubHelp logo

odyssey-voyage-ii-server's Introduction

Odyssey Voyage II - Server (Airlock)

Welcome to the companion app of Odyssey's Voyage II: Federating the Monolith! This is the server backend of the Airlock app. You can find the course lessons and instructions on Odyssey, Apollo's learning platform.

You can preview the completed demo app here.

You can find the client counterpart here.

How to use this repo

The course will walk you through step by step how to turn this monolithic graph into a federated graph. This codebase is the starting point of your journey!

To get started:

In a terminal window, navigate to the monolith directory.

  1. Run npm install.
  2. Run npm start.

This will start the GraphQL API server on http://localhost:4000

Next, let's run some local services.

  1. In a new terminal window, still in the monolith directory, run npm run launch. This will run 4 local services, which you can learn about in the accompanying Odyssey course.

Resetting the database

After playing around with the data, you may want to reset to its initial state. To do this, run npm run db:reset.

How to run the final version of the code

You can take a peek at what the final version of the code should look like (after completing all the steps in the course).

To run the final version, navigate to the final/router directory.

In a new terminal window, run APOLLO_KEY=<APOLLO_KEY> APOLLO_GRAPH_REF=<APOLLO_GRAPH_REF> ./router --config config.yaml.

Make sure to replace the values for APOLLO_KEY and APOLLO_GRAPH_REF (see course content for more details on how to set these up).

This will start the router on http://localhost:4000

Next, let's run the subgraphs we split off according to the course instructions: the monolith subgraph (what's left of it) and the accounts subgraph.

  1. In a new terminal window, navigate to the root of the final/monolith directory, run npm start.
  2. In a new terminal window, navigate to the final/subgraph-accounts directory, run npm install then npm start.

Finally, let's run some local services.

  1. In a new terminal window, navigate to the final/monolith directory, then run npm run launch. This will run 4 local services, which you can learn about in the accompanying Odyssey course.

Getting Help

For any issues or problems concerning the course content, please refer to the Odyssey topic in our community forums.

odyssey-voyage-ii-server's People

Contributors

mabuyo avatar dependabot[bot] avatar clmsnskr avatar boggsey avatar greengeko avatar

Watchers

 avatar  avatar

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.