How quantiradev/qt_pdf-editor works
QT PDF Studio is a browser-based PDF workspace. Users reach the document library, open a PDF in reader or editor mode, make document changes, and download the result; accounts are a separate capability. The frontend store coordinates PDF loading and API operations, while the FastAPI backend owns document operations and file history. The tree and excerpts support the main editing, reading, and authentication areas, but do not expose every route or establish wiring for advertised AI analysis, so those links are omitted.
Main entry points: main.py PDF API · store.ts Editor state · api.ts API client · page.tsx Editor route
Components 19
Web experience
- Document library
frontend/app/page.tsx - Editor route
frontend/app/editor/[id]/page.tsx - Reader route
frontend/app/preview/[id]/page.tsx - Editor studio
frontend/components/editor-studio/Editor.tsx - PDF reader
frontend/components/editor-studio/Previewer.tsx - Sign-in page
frontend/app/auth/page.tsx - Authentication form
frontend/components/authentication/AuthCard.tsx
PDF client
- Editor state
frontend/lib/store.ts - PDF renderer
frontend/lib/pdf.ts - API client
frontend/lib/api.ts
PDF services
- PDF API
backend/main.py - PDF operations
backend/pdf_ops.py - Text editing
backend/text_engine.py - Document storage
backend/storage.py - PDF files and history
backend/storage.py
Identity
- Auth handlers
backend/auth.py - Auth service
backend/src/index.ts
Other components
- User
- Browser
Connections 20
- User → Document library: opens workspace
- User → Editor route: edits PDF
- User → Reader route: reads PDF
- User → Sign-in page: signs in
- Editor route → Editor studio: renders editor
- Reader route → PDF reader: renders reader
- Editor studio → Editor state: uses state
- PDF reader → Editor state: loads document
- Editor state → PDF renderer: loads PDF
- Editor state → API client: requests operations
- Browser → API client: sends requests
- API client → PDF API: calls endpoints
- PDF API → Document storage: reads and updates
- PDF API → PDF operations: runs PDF operations
- PDF API → Text editing: applies text edits
- Document storage → PDF files and history: stores PDFs and snapshots
- Sign-in page → Authentication form: renders form
- Authentication form → Auth service: posts credentials
- Auth service → Auth handlers: routes auth requests
- PDF API → Auth handlers: handles auth routes