https://github.com/dev-emekaa/pensync
Collaborative Writing and Editing Platform. Easily brainstorm, contribute, and collaborate with your team on any writing project.
https://github.com/dev-emekaa/pensync
clerk-auth liveblocks nextjs shadcn-ui tailwindcss typescript
Last synced: about 1 month ago
JSON representation
Collaborative Writing and Editing Platform. Easily brainstorm, contribute, and collaborate with your team on any writing project.
- Host: GitHub
- URL: https://github.com/dev-emekaa/pensync
- Owner: dev-emekaa
- Created: 2024-10-12T08:17:33.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-20T18:16:52.000Z (over 1 year ago)
- Last Synced: 2025-03-30T01:38:14.650Z (about 1 year ago)
- Topics: clerk-auth, liveblocks, nextjs, shadcn-ui, tailwindcss, typescript
- Language: TypeScript
- Homepage: https://pensync.vercel.app
- Size: 716 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## 📋 Table of Contents
* [About](#about)
* [Tech Stack](#tech-stack)
* [Features](#features)
* [Quick Start](#quick-start)
## About
Collaborative Writing and Editing Platform. Easily brainstorm, contribute, and collaborate with your team on any writing project.
## Tech Stack
- Next.js
- TypeScript
- LiveBlocks
- Tailwind CSS
- Shadcn-ui
- Clerk-auth
## Features
☑️ Collaborative Text Editor: Multiple users can edit the same document simultaneously with real-time updates.
☑️ Documents Management
* Create Documents: Users can create new documents, which are automatically saved and listed.
* Delete Documents: Users can delete documents they own.
* Share Documents: Users can share documents via email or link with view/edit permissions.
* List Documents: Display all documents owned or shared with the user, with search and sorting functionalities.
☑️ Comments: Users can add inline and general comments, with threading for discussions.
☑️ Active Collaborators on Text Editor: Show active collaborators with real-time presence indicators.
☑️ Notifications: Notify users of document shares, new comments, and collaborator activities.
☑️ Responsive: The application is responsive across all devices.
and many more, including code architecture and reusability
## Quick Start
Follow these steps to set up the project locally on your machine.
**Prerequisites**
Make sure you have the following installed on your machine:
- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/en)
- [npm](https://www.npmjs.com/) (Node Package Manager)
**Cloning the Repository**
```bash
git clone https://github.com/techy-savant/PenSync
cd PenSync
```
**Installation**
Install the project dependencies using npm:
```bash
npm install
```
**Set Up Environment Variables**
Create a new file named `.env` in the root of your project and add the following content:
```env
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_LIVEBLOCKS_PUBLIC_KEY=
NEXT_PUBLIC_LIVEBLOCKS_SECRET_KEY=
```
**Running the Project**
```bash
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) in your browser to view the project.