Pecha Tool Sync Editor is an advanced annotation and collaborative editing platform built for working with Tibetan texts in the PechaData format. This tool is built with a modern stack using React (frontend) and Express (backend), and powered by the Quill editor for rich text editing with real-time collaboration and syncing capabilities.
It allows multiple users to:
Upload and edit pecha text documents
Collaboratively annotate, comment, and suggest edits
Synchronize two related texts side-by-side (e.g., source and translation)
Track changes and sync annotations across versions using the STAM (Stand-off Text Annotation Model)
This is the second version of the existing Pecha toolkit, redesigned for better performance, usability, and collaborative workflows.
🔄 Two-panel text sync for parallel text editing (source & translation)
🧑🤝🧑 Collaborative editing with multiple users working in real-time
📝 Quill-based rich text editing experience
📄 Upload and edit custom text files (pechas)
💬 Inline comments and suggestions
🚀 Powered by React, Express, and WebSockets for real-time updates
Frontend: React, Quill.js
Backend: Node.js, Express
Real-time: WebSockets / Socket.IO
Quickstart To get started with the toolkit, we recommend following this documentation.
Vite is a lightning-fast build tool and development server for modern web projects.
Make sure you have Node.js installed (version 14.18+, 16+ recommended):
Before running the application, set up environment variables:
-
Backend Environment
cd backend cp .env.example .env # Edit .env with your configuration values
-
Frontend Environment
cd frontend cp .env.example .env # Edit .env with your configuration values
Make sure to configure all required variables in both .env
files before proceeding.
- cd backend
- npm install
- npm run dev
- cd frontend
- npm install
- npm run dev
For local development, API docs are available at:
http://localhost:8000/docs