03 - Project Structure
A Tauri app has a frontend project plus src-tauri for Rust/native configuration.
Key folders
| Path | Purpose |
|---|---|
src/ (or framework equivalent) | Frontend app |
src-tauri/src/main.rs | Rust entrypoint |
src-tauri/tauri.conf.json | App metadata, windows, bundle settings |
src-tauri/icons/ | App icons |
Build flow
- Frontend builds static assets
- Tauri bundles assets
- Rust backend compiles
- Installer/app bundle is produced
Example tauri.conf.json fields
{
"productName": "MyApp",
"version": "0.1.0",
"identifier": "com.example.myapp"
}
Practical rules
- Keep frontend and Rust responsibilities clear
- Put domain logic in Rust if it needs trust/performance
- Put presentation and user flow in frontend