Gitplant is a desktop-first collaborative engineering PDF review tool for squad check and drawing-review workflows.
Gitplant is being built for:
- fast PDF viewing
- structured markups
- threaded comments
- squad check workflows
- review confirmations
- reminder automation
- audit trails
- revision comparison with overlay mode
Reference products are closer to Bluebeam, Acrobat review, and engineering drawing review tools.
Primary architecture document:
docs/PDF_REVIEW_ARCHITECTURE_PACKAGE.md
Supporting documents:
docs/DESKTOP_FIRST_ARCHITECTURE.mddocs/PROJECT_HANDOFF_SUMMARY.md
Gitplant runs as a Tauri desktop app.
Stack:
- Tauri
- React + TypeScript
- Vite
- Rust service layer
- SQLite
- PDF.js renderer adapter
The intended developer entry point is a single desktop command:
npm run desktop:devRust/Tauri is the authoritative application service layer.
Rust owns:
- SQLite persistence
- document import
- file storage
- derived revision creation
- processing jobs
- text extraction
- export operations
- desktop-native integrations
TypeScript owns:
- UI
- viewer state
- renderer abstraction usage
- markup model
- workflow UI
- shared contracts
Rendering must remain replaceable.
Current renderer:
- PDF.js
Architecture slots:
packages/viewer-corepackages/viewer-pdfjs- future native renderer adapter
The UI must not import PDF.js internals directly.
The viewer is layer-based.
Current/future layer kinds:
base_pdfoverlay_pdfmarkup_overlayselection_overlay
This supports revision comparison, markups, anchored comments, and future selection tools.
Primary entities include:
- Workspace / Project
- Document
- DocumentRevision
- MarkupLayer
- MarkupObject
- CommentThread
- ReviewerAssignment
- SquadCheck
- Confirmation
- Reminder
- AuditEvent
- ProcessingJob
- ExtractedPageText
PDF files are treated as immutable originals. Transformations create derived revisions.
Implemented now:
- desktop shell
- PDF import
- managed local file storage
- SQLite persistence
- document revision model
- renderer abstraction
- PDF.js adapter
- basic viewer
- page navigation
- zoom
- recent documents list
- text extraction pipeline
- extract-pages transformation proof path
Scaffolded / next:
- markup engine
- threaded comments
- squad check workflow
- review confirmations
- reminder automation
- export pipeline
- collaboration/sync
From the repository root:
npm run desktop:dev
npm run desktop:build
npm test
npm run typecheck