A collaborative document editing system is a platform or software that allows multiple users to edit, review, and comment on the same document simultaneously, often in real time. These systems are widely used for collaboration, content creation, and remote work.
In this Cloud Lab, you’ll build a basic document editing system. You’ll start by creating a WebSocket API to handle the user requests and a DynamoDB table to store user information. You’ll also create a Lambda function to handle the routes. Then, you’ll create an S3 bucket to store the documents. Moving on, you’ll create an SQS to queue the edits done by multiple users in order. Then, you’ll create an EC2 compute instance to get the user edits and update the documents using operational transform. Finally, you’ll deploy the web application and test it.
By the end of this cloud lab, you’ll develop a basic understanding of how collaborative document editing systems can be designed on AWS. The architecture diagram below shows the provisioned infrastructure: