/apollo-quotes

Quotes app using React, Apollo Client, Next, Express, Apollo Server, GraphQL, MongoDB and Mongoose

Primary LanguageTypeScript

Apollo Quotes

Progress Checklist

Client

  • Set up Apollo Client
  • Set up Apollo Cache
  • Set up global styles
  • User login
  • User sign up
  • User can:
    • Submit quote
    • Edit submitted quote
    • Like a quote
    • Delete a quote
    • View quotes liked
    • View quotes submitted
  • Restrict editting, deleting and submitting to authorised users
  • Subscription
    • Subscribe to new quotes
    • Subscribe to new likes
  • View feed of quotes
  • View feed of quotes by tag
  • View individual quote
  • Set up routing
  • Set up dark theme
  • Set up light theme
  • Set up Docker
  • Responsive Design
  • Password reset
  • Deploy

Server

  • Set up Apollo Server + Express
  • Set up Mongo DB connection
  • Create Mongoose models
  • Define GraphQL schema
  • Set up JWT authentication
  • Create seed file and function
  • Set up to store JWT in Cookies
  • Mutations
    • Quotes
      • Create quote
        • Create slug for when quote is being created to allow sharing on client
        • Set up Cloudinary to allow image uploads when creating quotes
      • Update quote
      • Delete quote
      • Like a quote
      • Unlike a quote
    • User
      • Create user
      • Login
  • Queries
    • Feed
    • Feed by Tag
    • User information including quotes liked and quotes submitted
    • Set up cursor-based pagination
  • Subscription
    • Subscribe to new quotes
    • Subscribe to new likes
  • Set up Docker
  • Password reset
  • Deploy