https://github.com/paritoshtripathi935/docsync
https://github.com/paritoshtripathi935/docsync
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/paritoshtripathi935/docsync
- Owner: paritoshtripathi935
- Created: 2025-03-01T18:49:16.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-03-08T16:53:44.000Z (11 months ago)
- Last Synced: 2025-03-08T17:23:58.620Z (11 months ago)
- Language: Python
- Size: 32.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DocSync
A real-time collaborative document editing system with conflict resolution and performance optimization
basically it will be obsidian with AI.
## ๐ Features
- Real-time document collaboration using WebSocket
- Document version control and conflict resolution
- High-performance caching with Redis
- Scalable message queue system using RabbitMQ
- RESTful API endpoints for document CRUD operations
- Authentication and authorization
- Monitoring and performance metrics
## ๐ ๏ธ Tech Stack
- **Backend**: Python (FastAPI)
- **Database**: MongoDB
- **Caching**: Redis
- **Message Queue**: RabbitMQ
- **Frontend**: React + Vite
## ๐๏ธ Project Structure
```
DocSync/
โโโ backend/
โ โโโ src/
โ โ โโโ models/ # Pydantic models
โ โ โโโ routers/ # API endpoints
โ โ โโโ settings/ # Configuration
โ โ โโโ utils/ # Helper functions
โ โโโ main.py # Application entry point
โ โโโ requirements.txt # Python dependencies
```
## ๐ฆ Getting Started
1. **Clone the repository**
```bash
git clone https://github.com/yourusername/DocSync.git
cd DocSync
```
2. **Set up virtual environment**
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
3. **Install dependencies**
```bash
pip install -r backend/requirements.txt
```
4. **Set up environment variables**
Create a `.env` file in the backend directory:
```env
MONGODB_URI=mongodb://localhost:27017
REDIS_URL=redis://localhost:6379
RABBITMQ_URL=amqp://guest:guest@localhost:5672
```
5. **Run the application**
```bash
cd backend
python main.py
```
The server will start at `http://localhost:8000`
## ๐ API Documentation
Once the server is running, visit:
- Swagger UI: `http://localhost:8000/docs`
- ReDoc: `http://localhost:8000/redoc`
## ๐งช Running Tests
```bash
pytest backend/tests
```
## ๐ฆ Deployment
The application can be deployed using Docker:
```bash
docker compose up -d
```
## ๐ License
MIT License
## ๐ฅ Contributing
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request