{"id":28510547,"url":"https://github.com/slacky300/real_time_edify","last_synced_at":"2026-03-04T01:16:08.388Z","repository":{"id":218698408,"uuid":"746006400","full_name":"Slacky300/REAL_TIME_EDIFY","owner":"Slacky300","description":"RealTimeEdify is a real-time collaborative document editing web application built using the MERN stack (MongoDB, Express.js, React, Node.js), Socket.IO for real-time communication, and Quill as the text editor.","archived":false,"fork":false,"pushed_at":"2025-03-25T12:43:55.000Z","size":257,"stargazers_count":8,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-08T23:05:18.312Z","etag":null,"topics":["expressjs","javascript","mongodb","nodejs","quilljs","reactjs","socket-io"],"latest_commit_sha":null,"homepage":"https://edify.cargodeploy.me","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Slacky300.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-20T19:55:29.000Z","updated_at":"2025-05-26T20:22:56.000Z","dependencies_parsed_at":"2024-11-23T21:03:05.779Z","dependency_job_id":null,"html_url":"https://github.com/Slacky300/REAL_TIME_EDIFY","commit_stats":null,"previous_names":["slacky300/real_time_edify"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Slacky300/REAL_TIME_EDIFY","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Slacky300%2FREAL_TIME_EDIFY","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Slacky300%2FREAL_TIME_EDIFY/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Slacky300%2FREAL_TIME_EDIFY/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Slacky300%2FREAL_TIME_EDIFY/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Slacky300","download_url":"https://codeload.github.com/Slacky300/REAL_TIME_EDIFY/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Slacky300%2FREAL_TIME_EDIFY/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263268565,"owners_count":23439975,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","javascript","mongodb","nodejs","quilljs","reactjs","socket-io"],"created_at":"2025-06-08T23:05:21.573Z","updated_at":"2026-03-04T01:16:03.343Z","avatar_url":"https://github.com/Slacky300.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RealTimeEdify\n\nRealTimeEdify is a real-time collaborative document editing web application built using the MERN stack (MongoDB, Express.js, React, Node.js), Socket.IO for real-time communication, and Quill as the text editor.\n\n## Screenshots:\n![image](https://github.com/user-attachments/assets/adcf343e-4cd4-409e-b194-c9ec7a3be3ac)\n![image](https://github.com/user-attachments/assets/808859f8-d3a0-40af-80aa-dff6e978a5c1)\n![image](https://github.com/user-attachments/assets/1a759dce-e026-4a16-8f93-13bce44c99e8)\n\n\n## Features\n\n### 1. Document Collaboration\n\nUsers can create documents and collaborate with others in real-time. Collaborators can simultaneously edit the document, and changes are instantly reflected for all participants.\n\n### 2. Collaborator Presence\n\nThe web app displays a list of online collaborators for each document. Users can see who else is currently active in the document, making collaboration more transparent.\n\n### 3. Email Verification\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"521\" alt=\"Email Verification\" src=\"https://github.com/Slacky300/REAL_TIME_EDIFY/assets/98531038/1ecad94d-eb4b-408c-9b84-9434a9994461\"\u003e\n\u003c/p\u003e\n\nTo enhance security and user authentication, RealTimeEdify implements email verification for user accounts. Users receive an email with a verification link upon registration.\n\nTo enhance security and user authentication, RealTimeEdify implements email verification for user accounts. Users receive an email with a verification link upon registration.\n\n### 4. Real-Time Editing\n\nQuill, a powerful and customizable WYSIWYG editor, is integrated into RealTimeEdify to provide a seamless real-time editing experience. Users can see live updates as collaborators edit the document.\n\n## Technologies Used\n\n- **MERN Stack:**\n  - MongoDB: NoSQL database for storing user data and document content.\n  - Express.js: Backend framework for building the API.\n  - React: Frontend library for building the user interface.\n  - Node.js: JavaScript runtime for server-side development.\n\n- **Socket.IO:**\n  - Enables real-time bidirectional communication between clients and the server. Used for collaborative editing and presence tracking.\n\n- **Quill:**\n  - Feature-rich WYSIWYG editor used for document editing. Customized for real-time collaboration.\n\n## Getting Started\n\nFollow these steps to run RealTimeEdify locally:\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/your-username/RealTimeEdify.git\n   cd RealTimeEdify\n   ```\n2. **Install dependencies for frontend:**\n\n  ```bash\n     cd src\n     cd client\n     npm i\n  ```\n3. **Install dependencies for backend:**\n\n  ```bash\n     cd src\n     npm i\n  ```\n\n3. **Set up .env variables by creating a .env file in the server directory and adding the following variables:**\n\n  - For server side:\n   ```bash\n    MONGODB_URI=your_mongo_db_uri\n    JWT_SECRET=your_jwt_secret\n    PORT=8000\n    PASSWORD=your_app_password_for_email\n    EMAIL=your_gmail_email\n    BACKEND_URL=your_backend_url/api/v1\n    FRONTEND_URL=your_frontend_url\n    PRODUCTION=false\n   ```\n\n   Replace `your_mongodb_connection_string`, `your_jwt_secret`, `your_email_username`, `your_email_password`, `your_email_host`, and `your_email_port` with your own values.\n\n  **Note:** If you are using Gmail for sending emails, you need to enable \"Less secure app access\" in your Google account settings.\n\n  - For client side:\n   ```bash\n    VITE_APP_BACKEND_URL=your_backend_url/api/v1\n    VITE_APP_SOCKET_URL=your_backend_url\n   ```\n\n   Replace `your_backend_url` with the URL where the backend server is running.\n\n4. **Run the frontend**\n  ```bash\n    cd src\n    cd client\n    npm run dev\n  ```\n\n5. **Run the backend**\n  ```bash\n    cd src\n    npm run dev\n  ```\n6. **Access the application in your browser at http://localhost:5173.**\n\n7. **Create an account and start collaborating on documents!**\n\n## **Contributing**\n\nContributions are welcome! Please refer to the [Contributing Guidelines](contributing.md) for more information.\n\n## **License**\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslacky300%2Freal_time_edify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fslacky300%2Freal_time_edify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fslacky300%2Freal_time_edify/lists"}