originv0.2.0

Overview

Origin is a reference architecture and starter system for modular desktop applications built with Rust and Tauri.

Origin is not a framework that replaces Tauri, and not a monolithic crate every application must depend on. It is a set of architecture rules, reusable platform crates, security conventions and build processes, plus a reference application that demonstrates all of it. The central rule: domain code does not know Tauri exists.

Getting started

Page Purpose
Installation Prerequisites, a checkout, a scaffolded product, or single crates
Quickstart Run the demo, understand the layout

Concepts

Page Purpose
Architecture overview Layers, crates, modules and the Tauri integration
Architecture in the code How the layers fit together and why
Security Permission model, capabilities, credential handling
The manifest app.toml, generated files, security profiles

Guides

Page Purpose
Creating a module Add a feature area to an application
Authentication and connectors OAuth, accounts, connectors, rate limits
Sync and jobs Sync engine, policies, backoff, offline, jobs
AI integration MCP as a driving adapter, the AI port, AI permissions
Testing Contract tests, test doubles, testing without a desktop

Project lifecycle

Page Purpose
Updating a project cargo xtask new, migrations, keeping derivatives current
Publishing Publishing the origin-* crates and npm packages, in order

Reference

Page Purpose
Crates and packages Every published crate and package, with crates.io, docs.rs and npm links

The architecture decisions behind all of this are recorded in adr/.

Edit this page on GitHub · Docs for v0.2.0