-
Notifications
You must be signed in to change notification settings - Fork 0
applications desktop app
Active contributors: Douwe de Vries, vriesd
The desktop app is the QA Scribe runtime users install and run. src-tauri/src/main.rs initializes the native shell and backend state, while frontend/src/main.tsx mounts the React renderer.
src-tauri/
src/main.rs
src/commands/
src/jobs.rs
src/settings.rs
frontend/src/
main.tsx
App.tsx
app/
views/
editor/
| File | Purpose |
|---|---|
src-tauri/src/main.rs |
Creates app state, opens SQLite, registers plugins and command handler, kills children on exit. |
src-tauri/src/settings.rs |
Wraps SessionService in Tauri-managed AppState. |
src-tauri/src/commands.rs |
Groups command modules exposed to the renderer. |
frontend/src/main.tsx |
Mounts the React root. |
frontend/src/App.tsx |
Connects AppShell to useAppController. |
frontend/src/app/AppShell.tsx |
Desktop layout and view routing. |
graph TD
Main[src-tauri/src/main.rs] --> State[AppState]
Main --> Jobs[JobStore]
Main --> Commands[Specta command handler]
React[frontend/src/App.tsx] --> Shell[AppShell]
Shell --> Controller[useAppController]
Controller --> Commands
The app opens qa-scribe.sqlite in the app-data directory and stores attachments under the same app-data root. The frontend boots by calling getSettings() and listSessions() through frontend/src/tauri.ts, then opens the first Session if one exists.
The desktop app depends on Rust core, Tauri command bridge, and Frontend shell. Generation paths also use Generation jobs.
Start in frontend/src/app/AppShell.tsx for layout changes, frontend/src/app/useAppController.ts for workflow state, and src-tauri/src/main.rs for native app setup.
- QA Scribe
- Download overview video (MP4)
- Architecture
- Getting started
- Glossary
- By the numbers
- Lore
- Fun facts
- Video overview
- How to contribute
- Development workflow
- Testing
- Debugging
- Patterns and conventions
- Tooling
- Applications
- Desktop app
- Smoke harness
- Systems
- Rust core
- Tauri command bridge
- Frontend shell
- Generation jobs
- Provider detection
- Release tooling
- Features
- Session capture
- Rich record editing
- Managed attachments
- AI-assisted Testware
- Settings and provider setup
- Crates
- qa-scribe-core
- qa-scribe-app
- Primitives
- Session
- Entry
- Finding
- Draft
- Evidence
- API
- Tauri commands
- Deployment
- Security
- Background
- Architecture decisions
- Migration context
- Cleanup opportunities
- TODOs and FIXMEs
- Complexity hotspots
- Reference
- Configuration
- Data models
- Dependencies