Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yorkie-team/codepair
Build your own AI-powered collaborative markdown editor in just 5 minutes
https://github.com/yorkie-team/codepair
Last synced: 5 days ago
JSON representation
Build your own AI-powered collaborative markdown editor in just 5 minutes
- Host: GitHub
- URL: https://github.com/yorkie-team/codepair
- Owner: yorkie-team
- License: apache-2.0
- Created: 2024-01-10T02:18:36.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-04-05T12:26:24.000Z (7 months ago)
- Last Synced: 2024-04-14T00:47:51.042Z (7 months ago)
- Language: TypeScript
- Homepage: https://codepair.yorkie.dev
- Size: 15.7 MB
- Stars: 15
- Watchers: 2
- Forks: 1
- Open Issues: 30
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# CodePair
Build your own AI real-time collaborative markdown editor in just 5 minutes.## Overview
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## Packages
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](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](backend/README.md) for detailed information on setting up and running the backend.## Getting Started with Development
### 1. Set Up GitHub OAuth Key
For the Social Login feature, you need to obtain a GitHub OAuth key before running the project. Please refer to [this document](./docs/1_Set_Up_GitHub_OAuth_Key.md) for guidance.
After completing this step, you should have the `GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET` values.
### 2. Choose Running Mode
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.### 3-1. Frontend Development Only Mode
1. Update your `GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET` to `./backend/docker/docker-compose-full.yml`.
```bash
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"
```2. Run `./backend/docker/docker-compose-full.yml`.
```bash
docker-compose -f ./backend/docker/docker-compose-full.yml up -d
```3. Install dependencies from the root.
```bash
pnpm install
```4. Run the Frontend application.
```bash
pnpm frontend dev
```5. Visit http://localhost:5173 to enjoy your CodePair.
### 3-2. Full Stack Development Mode
1. Update your `GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET` to `./backend/.env.development`.
```bash
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
```2. Run `./backend/docker/docker-compose.yml`.
```bash
docker-compose -f ./backend/docker/docker-compose.yml up -d
```3. Install dependencies from the root.
```bash
pnpm install
```4. Run the Backend application and the Frontend application:
```bash
pnpm backend start:dev
pnpm frontend dev
```5. Visit http://localhost:5173 to enjoy your CodePair.
## Contributing
See [CONTRIBUTING](CONTRIBUTING.md) for details on submitting patches and the contribution workflow.
## Contributors ✨
Thanks goes to these incredible people: