Skip to content

Commit e72e41b

Browse files
committed
fix: tighten document workflow and explorer UI
1 parent 140a79a commit e72e41b

145 files changed

Lines changed: 4918 additions & 2278 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env.example

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,6 @@ OPENAI_API_MODEL=<your-openai-model-here>
6464
EMAIL_SERVER=<your-email-server>
6565
EMAIL_FROM=<your-email-from>
6666

67-
# === Milvus (Vector DB) ===
68-
#MILVUS_URL=localhost:19530
69-
70-
MILVUS_URL=milvus:19530
71-
7267
# === Redis Configuration ===
7368
#redis:6379中redis为docker-compose中redis服务的名称
7469
REDIS_URL=redis://redis:6379
@@ -83,4 +78,4 @@ DICTIONARY_API_URL=http://localhost:3000
8378
# Application host for external access
8479
STUDIO_HOST=<your-domain-here>
8580
#日志中禁用的DEBUG type
86-
LOGGER_DISABLE_DEBUG_TYPES=middleware:auth
81+
LOGGER_DISABLE_DEBUG_TYPES=middleware:auth

README.md

Lines changed: 54 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131

3232
DeepTrans Studio is described in our CSCW '26 Companion Demo (CCF-A) paper. If you use this project in academic work, please cite:
3333

34-
> Ziyang Lian, Qingya Zhang, Hao Wang, Huiwen Xiong, Qi Yang, Lingyi Meng, Xiaoyi Gu, and Rui Wang. 2026. DeepTrans Studio: Turning Expert Interventions into Shared Team Knowledge in Agentic Translation Workflows. In *Proceedings of Companion of the 2026 Computer-Supported Cooperative Work and Social Computing (CSCW '26 Demo, CCF-A)*. ACM, New York, NY, USA, 4 pages. DOI forthcoming.
34+
> Ziyang Lian, Qingya Zhang, Hao Wang, Huiwen Xiong, Qi Yang, Lingyi Meng, Xiaoyi Gu, and Rui Wang. 2026. DeepTrans Studio: Turning Expert Interventions into Shared Team Knowledge in Agentic Translation Workflows. In _Proceedings of Companion of the 2026 Computer-Supported Cooperative Work and Social Computing (CSCW '26 Demo, CCF-A)_. ACM, New York, NY, USA, 4 pages. DOI forthcoming.
3535
3636
```bibtex
3737
@inproceedings{lian2026deeptrans,
@@ -49,30 +49,34 @@ DeepTrans Studio is described in our CSCW '26 Companion Demo (CCF-A) paper. If y
4949
## ✨ Key Features
5050

5151
### 🎯 Translation IDE
52+
5253
- **Intelligent Editor**: Segment-aligned parallel editing with version control and keyboard shortcuts
5354
- **Multi-Agent Collaboration**: Coordinate multiple AI agents for complex translation tasks
5455
- **Real-time Preview**: Instant document preview with formatting preservation
5556

5657
### 🤖 AI-Powered Translation
58+
5759
- **Multi-Engine Support**: Integration with OpenAI and custom AI models
5860
- **Terminology Extraction**: Automated domain-specific term extraction
5961
- **Quality Assessment**: AI-driven grammar, syntax, and discourse evaluation
60-
- **Translation Memory**: Vector-based semantic search using Milvus
62+
- **Translation Memory**: Vector-based semantic search using PostgreSQL + pgvector
6163

6264
### 📚 Knowledge Management
65+
6366
- **Project Dictionaries**: Project-specific terminology databases
6467
- **Translation Memory**: Import/export translation memory in TMX, CSV, XLSX formats
65-
- **Semantic Search**: Vector similarity search powered by Milvus
66-
- **Visual Management**: Attu UI for vector database inspection
68+
- **Semantic Search**: Vector similarity search powered by pgvector
6769

6870
### 🔄 Workflow Automation
71+
6972
- **Queue-Based Processing**: BullMQ-driven asynchronous task processing
7073
- **Batch Operations**: Bulk translation, evaluation, and quality checks
71-
- **Document Parsing**: PDF, DOCX, XLSX document parsing with PDFMath service
74+
- **Document Parsing**: DOCX, PDF, TXT, and Markdown parsing with built-in parsers
7275
- **Status Tracking**: Complete translation lifecycle management
7376

7477
### 🔌 Extensibility
75-
- **Open Architecture**: Modular design with MinIO, Milvus, Redis integration
78+
79+
- **Open Architecture**: Modular design with PostgreSQL, MinIO, Redis integration
7680
- **API Gateway**: RESTful APIs for external integration
7781
- **Custom Agents**: Extensible AI agent framework
7882
- **Plugin System**: Support for custom translation engines and processing pipelines
@@ -85,29 +89,26 @@ DeepTrans Studio adopts a modern full-stack architecture based on Next.js App Ro
8589
graph TD
8690
Browser[Web Browser] -->|HTTPS| Traefik[Traefik Proxy]
8791
Traefik -->|HTTP 3000| Studio[Next.js Studio]
88-
Traefik --> Attu[Attu UI]
8992
Studio -->|Server Actions| Postgres[(PostgreSQL)]
9093
Studio -->|Task Queue| Redis[(Redis)]
91-
Studio -->|API Calls| PDFMath[PDFMath Service]
94+
Studio -->|Parse Requests| Parser[Built-in Parsers]
9295
Worker[Worker Service] -->|Consume Tasks| Redis
9396
Worker -->|ORM| Postgres
94-
Worker -->|Vector Ops| Milvus[(Milvus)]
97+
Worker -->|Vector Ops| Postgres
9598
Worker -->|Object Storage| MinIO[(MinIO)]
96-
Milvus --> etcd[(etcd)]
9799
```
98100

99101
### Core Components
100102

101-
| Component | Technology | Purpose |
102-
|-----------|-----------|---------|
103-
| **Studio** | Next.js 15, React 19, TypeScript | Frontend UI, Server Actions, Authentication |
104-
| **Worker** | Node.js, BullMQ | Background job processing, batch operations |
105-
| **Database** | PostgreSQL, Prisma 6 | Relational data storage and ORM |
106-
| **Cache** | Redis | Session management, task queues |
107-
| **Vector DB** | Milvus + etcd | Semantic search, translation memory |
108-
| **Storage** | MinIO (S3-compatible) | Document and asset storage |
109-
| **Parser** | PDFMath Service | PDF and mathematical document parsing |
110-
| **Gateway** | Traefik | Reverse proxy, SSL/TLS termination |
103+
| Component | Technology | Purpose |
104+
| ------------ | ----------------------------------------------------- | ------------------------------------------------- |
105+
| **Studio** | Next.js 15, React 19, TypeScript | Frontend UI, Server Actions, Authentication |
106+
| **Worker** | Node.js, BullMQ | Background job processing, batch operations |
107+
| **Database** | PostgreSQL 18, pgvector, Prisma 6 | Relational data, vector search, and ORM |
108+
| **Cache** | Redis | Session management, task queues |
109+
| **Storage** | MinIO (S3-compatible) | Document and asset storage |
110+
| **Parser** | DOCX XML parser, pdf-parse, OCR fallback, text parser | Document parsing for DOCX, PDF, TXT, and Markdown |
111+
| **Gateway** | Traefik | Reverse proxy, SSL/TLS termination |
111112

112113
## 🚀 Quick Start
113114

@@ -181,8 +182,8 @@ yarn db:seed
181182
**Option 1: Using Docker Compose (Recommended)**
182183

183184
```bash
184-
# Start all services
185-
docker compose up -d db redis etcd milvus minio pdfmath worker
185+
# Start dependency services
186+
docker compose up -d db redis minio
186187

187188
# Start Next.js development server
188189
yarn dev
@@ -197,12 +198,12 @@ yarn dev
197198
yarn dev
198199

199200
# In another terminal, start worker
200-
yarn dev:worker
201+
yarn worker
201202
```
202203

203204
Additional UIs:
205+
204206
- **Studio**: http://localhost:3000
205-
- **Attu (Milvus UI)**: http://localhost:8001
206207
- **Prisma Studio**: Run `yarn prisma studio`
207208

208209
### Production Deployment
@@ -213,10 +214,10 @@ cp .env.example .env.production
213214
# Edit .env.production with production values
214215

215216
# Build images
216-
docker compose build studio worker pdfmath
217+
docker compose build app app_worker
217218

218219
# Deploy services
219-
docker compose up -d traefik studio worker db redis milvus minio
220+
docker compose up -d traefik app app_worker db redis minio
220221

221222
# Services will be available on configured domain with SSL via Traefik
222223
```
@@ -251,22 +252,21 @@ deeptrans-studio/
251252

252253
## 🛠️ Available Scripts
253254

254-
| Command | Description |
255-
|---------|-------------|
256-
| `yarn dev` | Start Next.js development server with hot reload |
257-
| `yarn dev:worker` | Start worker service locally (if not using Docker) |
258-
| `yarn build` | Build production Next.js application |
255+
| Command | Description |
256+
| ------------------- | -------------------------------------------------- |
257+
| `yarn dev` | Start Next.js development server with hot reload |
258+
| `yarn worker` | Start worker service locally (if not using Docker) |
259+
| `yarn build` | Build production Next.js application |
259260
| `yarn build:worker` | Compile worker service (esbuild → dist/worker.cjs) |
260-
| `yarn start` | Start production Next.js server |
261-
| `yarn lint` | Run ESLint code quality checks |
262-
| `yarn type-check` | Run TypeScript type checking |
263-
| `yarn prisma studio` | Open Prisma Studio database GUI |
264-
| `yarn prisma generate` | Generate Prisma Client |
265-
| `yarn db:push` | Push schema changes to database |
266-
| `yarn db:seed` | Seed database with sample data |
267-
| `yarn test:segment` | Test segmentation parsing |
268-
| `yarn test:docx` | Test document parsing |
269-
| `yarn queue:ui` | Launch Bull Board queue monitoring |
261+
| `yarn start` | Start production Next.js server |
262+
| `yarn lint` | Run ESLint code quality checks |
263+
| `yarn type-check` | Run TypeScript type checking |
264+
| `yarn db:studio` | Open Prisma Studio database GUI |
265+
| `yarn db:migrate` | Run database migrations |
266+
| `yarn db:push` | Push schema changes to database |
267+
| `yarn db:seed` | Seed database with sample data |
268+
| `yarn test:docx` | Test document parsing |
269+
| `yarn queue:ui` | Launch Bull Board queue monitoring |
270270

271271
## 🌍 Internationalization
272272

@@ -283,6 +283,7 @@ When adding new translations, ensure all language files are updated consistently
283283
We welcome contributions! Please follow these guidelines:
284284

285285
### Branch Strategy
286+
286287
- `feat/*` - New features
287288
- `fix/*` - Bug fixes
288289
- `chore/*` - Maintenance tasks
@@ -294,19 +295,20 @@ We welcome contributions! Please follow these guidelines:
294295
2. **Create Branch**: Create a feature branch from `main`
295296
3. **Code Changes**: Make your changes following our coding standards
296297
4. **Quality Checks**: Run linting and type checking
297-
```bash
298-
yarn lint
299-
yarn type-check
300-
```
298+
```bash
299+
yarn lint
300+
yarn type-check
301+
```
301302
5. **Commit**: Use [Conventional Commits](https://www.conventionalcommits.org/) format
302-
```
303-
feat: add translation memory import
304-
fix: resolve authentication bug
305-
docs: update installation guide
306-
```
303+
```
304+
feat: add translation memory import
305+
fix: resolve authentication bug
306+
docs: update installation guide
307+
```
307308
6. **Pull Request**: Submit PR with clear description
308309

309310
### Code Standards
311+
310312
- Follow ESLint and Prettier configurations
311313
- Write TypeScript with proper types (avoid `any`)
312314
- Add JSDoc comments for complex functions
@@ -320,9 +322,10 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
320322
## 🙏 Acknowledgments
321323

322324
Built with modern technologies:
325+
323326
- [Next.js](https://nextjs.org/) - React framework
324327
- [Prisma](https://www.prisma.io/) - Database ORM
325-
- [Milvus](https://milvus.io/) - Vector database
328+
- [pgvector](https://github.com/pgvector/pgvector) - PostgreSQL vector search
326329
- [BullMQ](https://docs.bullmq.io/) - Job queues
327330
- [MinIO](https://min.io/) - Object storage
328331
- [Traefik](https://traefik.io/) - Reverse proxy

0 commit comments

Comments
 (0)