Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/soumojit622/scribee

Revolutionize your writing experience with Scribee ✨🖋️, where collaboration 🤝 meets innovation 🚀!
https://github.com/soumojit622/scribee

clerk liveblocks nextjs14 sentry shadcn-ui tailwind typesc

Last synced: 1 day ago
JSON representation

Revolutionize your writing experience with Scribee ✨🖋️, where collaboration 🤝 meets innovation 🚀!

Awesome Lists containing this project

README

        

# 📄 Google Docs Clone

[![Google Docs Clone Banner](https://github.com/soumojit622/google-docs-clone/blob/master/public/assets/images/banner.png)](https://google-docs-clone-delta-six.vercel.app/)

A modern, collaborative document editor that replicates the core functionalities of Google Docs. This application offers real-time collaboration, rich text editing, and a responsive design for an optimal user experience.

## 🌐 Live Demo

Explore the live application here: [Google Docs Clone Live Demo](https://google-docs-clone-delta-six.vercel.app/)

## 📑 Go To:

- [Technologies Used](#-technologies-used)
- [Features](#-features)
- [Installation](#-installation)
- [Usage](#-usage)
- [Contributing](#-contributing)
- [Contact](#-contact)
- [Made By](#-made-by)
- [Acknowledgments](#-acknowledgments)

## 🚀 Technologies Used

- **[Next js](https://nextjs.org/)**: A React framework for server-side rendering and static site generation.
- **[TypeScript](https://www.typescriptlang.org/)**: Adds static type definitions to JavaScript for better development experience.
- **[Liveblocks](https://liveblocks.io/)**: Framework for building real-time collaborative applications.
- **[Lexical Editor](https://lexical.dev/)**: A versatile rich text editor framework.
- **[ShadCN](https://shadcn.dev/)**: A library of accessible and customizable UI components.
- **[Tailwind CSS](https://tailwindcss.com/)**: Utility-first CSS framework for responsive and customizable styling.

## 🔋 Features

👉 **Authentication**: Secure user authentication via [GitHub](https://github.com/) using [NextAuth](https://next-auth.js.org/), managing sign-ins, sign-outs, and sessions.

👉 **Collaborative Text Editor**: Multiple users can edit documents simultaneously with live updates, ensuring seamless collaboration.

👉 **Document Management**:
- **Create Documents**: Users can create new documents that are automatically saved and organized.
- **Delete Documents**: Users can delete documents they own with a simple interface.
- **Share Documents**: Share documents via email or link with customizable view/edit permissions.
- **List Documents**: View and manage all documents, including those owned or shared with the user, with search and sorting capabilities.

👉 **Comments**: Add inline or general comments with support for threaded discussions, enabling in-depth conversations.

👉 **Active Collaborators**: Real-time presence indicators to show who is currently working on the document.

👉 **Notifications**: Get alerts for document sharing, new comments, and collaborator activity to stay updated.

👉 **Responsive Design**: The application is optimized for various devices, ensuring a smooth experience on both desktop and mobile.

👉 **Robust Architecture**: Emphasizes code reusability and modularity, promoting maintainability and scalability.

## 🔧 Installation

To set up and run this project locally, follow these steps:

1. **Clone the Repository:**
```bash
git clone https://github.com/soumojit622/google-docs-clone.git
cd google-docs-clone
```

2. **Install Dependencies:**
```bash
npm install
```

3. **Set Up Environment Variables:**
Create a `.env.local` file in the root directory and add your environment variables. Use `.env.example` as a reference.

4. **Run the Development Server:**
```bash
npm run dev
```

5. **Access the Application:**
Open your browser and navigate to `http://localhost:3000` to start using the application.

## 📚 Usage

Once the server is running, you can:
- **Create and Edit Documents**: Start new documents or edit existing ones using the rich text editor with various formatting options.
- **Collaborate in Real-Time**: Invite others to work on documents together and see live changes.
- **Manage Documents**: Use the dashboard to organize, search, and manage your documents efficiently.
- **Comment and Discuss**: Add comments and participate in threaded discussions to collaborate more effectively.
- **Track Collaborators**: See who is currently working on the document with real-time presence indicators.

## 🤝 Contributing

We welcome contributions to this project! To contribute:
- **Fork the Repository**: Create your own fork.
- **Create a Branch**: Develop your changes in a new branch.
- **Submit a Pull Request**: Open a pull request with a clear description of your changes.

Please ensure that your code follows the project's coding standards and includes appropriate tests.

## 📫 Contact

For questions or feedback:
- **Email**: [mail](mailto:[email protected])

## 👨‍💻 Made By

- [Soumojit Banerjee](https://github.com/soumojit622)

## 🙏 Acknowledgments

Special thanks to the developers and communities behind the technologies used:
- [Next.js](https://nextjs.org/)
- [TypeScript](https://www.typescriptlang.org/)
- [Liveblocks](https://liveblocks.io/)
- [Lexical Editor](https://lexical.dev/)
- [ShadCN](https://shadcn.dev/)
- [Tailwind CSS](https://tailwindcss.com/)

---