A platform that connects parrot lovers and suppliers together.
We use mongodb
as the database which means to be able to run the app, you need to install mongodb
server and keep it running in the background while running birds supply server.
Please ask your lovely friend Google
about how to install mongodb
.
- Run
npm i
from the root to install requirednpm
dependencies - Run
npm run seed
to preload sample data intomongodb
- Duplicate
.env.example
as.env
in the same location as.env.example
and populate the required services credentials - Configure FCM as per instructions of next section
- For
Mac
users, runnpm start
ForWindows
users, you need to ensure yourmongodb
is already running at the background and runnpm run win
under the project root
Go to service accounts
under your project settings page
and click generate private key
to generate and download a json credentials.
Go to http://localhost:4000/graphiql
to write and test your graphql
queries
-
Upgrade apollo server to 2.0
-
Add relay-modern persisted queries http://www.reactjunkie.com/relay-modern-persisted-queries/
-
Persist notifications into firebase db & use firebase cloud messaging to send notifications
-
Integrate Graphql Apollo Engine
-
Inspect to see if N+1 problem presents (dataloader comes to the rescue for this)
-
overhaul queries/move public queries to under viewer node
-
Add signup page/logic
-
Refactor mutation design as per Graphql Mutation Deisgn
-
Add validations
-
Replace directiveResolvers with SchemaDirectiveVisitor
-
Add subscriptions
-
Add dataloader
- Timing
Promise.all
inresolvers/queries/viewer.js
- Test containers communication locally via docker compose
- Deploy it on EC2 using ECS follow guide on effective_devops_with_aws (docker installed)
- graphql-compose-relay
- front-end
- relay-modern
- back-end
- Apollo Restify Server
- database
- mongodb
- mongoose