Skip to content

applications

Douwe de Vries edited this page Jul 2, 2026 · 2 revisions

Applications

Active contributors: Douwe de Vries

CSV Align ships two runtime shapes from one codebase: a local web application and a native desktop application. Both use the React frontend and the shared Rust backend workflows.

Applications

Application Page Entry points
Local web app Local web app src/main.rs, src/api/app.rs, frontend/dist
Desktop app Desktop app src-tauri/src/main.rs, src-tauri/src/commands.rs, frontend/src/services/tauri.ts

Shared path

graph LR
    Browser[Browser runtime] --> HTTP[Axum routes]
    Desktop[Tauri runtime] --> Invoke[Tauri commands]
    HTTP --> Shared[Shared backend workflows]
    Invoke --> Shared
    Shared --> Store[SessionStore]
    Shared --> Engine[Comparison engine]
Loading

The runtime split is explained in architecture. Transport details are in transport parity.

Key source files

File Purpose
src/main.rs Starts the local Axum server and static file serving.
src/api/app.rs Builds API routes and the fallback frontend file server.
src-tauri/src/main.rs Builds the Tauri app and registers commands.
src-tauri/src/commands.rs Desktop command implementations and native file dialogs.
src-tauri/tauri.conf.json Desktop dev/build commands, CSP, windows, and bundle config.

Clone this wiki locally