✍️ Write with me
A real-time collaborative blog post editor built with GraphQL, React, React Markdown, & AWS AppSync.
This repo goes along with the medium post "How to Build a Real-time Collaborative Markdown Editor with React Hooks, GraphQL & AWS AppSync". Click here to check it out.
Try it out at www.writewithme.dev
Base schema
Here's the base schema:
type Post @model {
id: ID!
clientId: ID!
markdown: String!
title: String!
createdAt: String
}
We have a Post
type that has a few properties. The most important property is the markdown. This is where we are keeping up with the state of the post.
We also have a clientId
to properly handle GraphQL subscriptions on the client.
Launching the app
Deploy this fullstack app with a single click to the Amplify Console:
Run locally with the Amplify CLI
- Clone the repo
git clone https://github.com/dabit3/write-with-me.git
- Change into the directory & install dependencies
cd write-with-me
npm install
- Initialize the Amplify backend
amplify init
- Push the application into your account
amplify push