Build your own AI real-time collaborative markdown editor in just 5 minutes.
![스크린샷 2024-02-02 오후 4 35 29](https://private-user-images.githubusercontent.com/52884648/301765673-25c441ef-9ca4-4235-9969-279e1c56258b.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYwOTE4MjYsIm5iZiI6MTcyNjA5MTUyNiwicGF0aCI6Ii81Mjg4NDY0OC8zMDE3NjU2NzMtMjVjNDQxZWYtOWNhNC00MjM1LTk5NjktMjc5ZTFjNTYyNThiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MTElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTExVDIxNTIwNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWEyNTU2YjI2Nzk3ZGJmNjg5YWM2ZTg4ZmU4NjhiNTY1OGUwODUwMGY5ZjY0MzU1MGEzNmY3OGFmZGRjZjYzNDImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.l9oVzPeFYt4Ib1etHN8OUtym0qm5bkciF1qd3BfsbpE)
CodePair is an open-source real-time collaborative markdown editor with AI intelligence, built using React, NestJS, and LangChain.
CodePair provides the following features:
- Workspace: A space where users can invite others and collaboratively edit documents
- Sharing Document: Share documents with external parties by setting permissions and expiration time
- Yorkie Intelligence: AI intelligence available within the collaborative editing editor
This repository contains multiple packages/modules that make up our project. Each package/module is contained in its own directory within this repository.
- Frontend: Contains the frontend code of our application. Please refer to frontend/README.md for detailed information on setting up and running the frontend.
- Backend: Contains the backend code of our application. Please refer to backend/README.md for detailed information on setting up and running the backend.
For the Social Login feature, you need to obtain a GitHub OAuth key before running the project. Please refer to this document for guidance.
After completing this step, you should have the GITHUB_CLIENT_ID
and GITHUB_CLIENT_SECRET
values.
We offer two options. Choose the one that best suits your needs:
- Frontend Development Only Mode: Use this option if you only want to develop the frontend.
- Full Stack Development Mode: Use this option if you want to develop both the frontend and backend together.
-
Update your
GITHUB_CLIENT_ID
andGITHUB_CLIENT_SECRET
to./backend/docker/docker-compose-full.yml
.vi ./backend/docker/docker-compose-full.yml # In the file, update the following values: # GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET GITHUB_CLIENT_ID: "your_github_client_id_here" GITHUB_CLIENT_SECRET: "your_github_client_secret_here"
-
Run
./backend/docker/docker-compose-full.yml
.docker-compose -f ./backend/docker/docker-compose-full.yml up -d
-
Run the Frontend application:
cd frontend npm install npm run dev
-
Visit http://localhost:5173 to enjoy your CodePair.
-
Update your
GITHUB_CLIENT_ID
andGITHUB_CLIENT_SECRET
to./backend/.env.development
.vi ./backend/.env.development # In the file, update the following values: # GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET GITHUB_CLIENT_ID=your_github_client_id_here GITHUB_CLIENT_SECRET=your_github_client_secret_here
-
Run
./backend/docker/docker-compose.yml
.docker-compose -f ./backend/docker/docker-compose.yml up -d
-
Run the Backend application:
cd backend npm install npm run start:dev
-
Run the Frontend application:
cd ../frontend npm install npm run dev
-
Visit http://localhost:5173 to enjoy your CodePair.
See CONTRIBUTING for details on submitting patches and the contribution workflow.
Thanks goes to these incredible people: