62 lines
1.4 KiB
Markdown
62 lines
1.4 KiB
Markdown
# Architecture
|
|
|
|
> Technical architecture and design decisions for [Project Name]
|
|
|
|
## Tech Stack
|
|
|
|
| Layer | Technology | Purpose |
|
|
|-------|------------|---------|
|
|
| Frontend | Vue 3 + Quasar | UI framework |
|
|
| State | Pinia | State management |
|
|
| Routing | Vue Router | Client-side routing |
|
|
| Desktop | Tauri | Native desktop wrapper |
|
|
| Backend | Nhost | Auth, database, storage |
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
app/
|
|
├── src/
|
|
│ ├── boot/ # Initialization scripts
|
|
│ ├── components/ # Reusable Vue components
|
|
│ ├── composables/ # Vue composables (shared logic)
|
|
│ ├── layouts/ # Page layouts
|
|
│ ├── pages/ # Route pages
|
|
│ ├── router/ # Route definitions
|
|
│ ├── stores/ # Pinia stores
|
|
│ ├── services/ # API services
|
|
│ └── types/ # TypeScript types
|
|
├── src-tauri/ # Tauri/Rust code
|
|
└── build.sh # Build script
|
|
```
|
|
|
|
## Key Design Decisions
|
|
|
|
### [Decision 1]
|
|
|
|
**Context**: [Why this decision was needed]
|
|
|
|
**Decision**: [What was decided]
|
|
|
|
**Consequences**: [Trade-offs and implications]
|
|
|
|
### [Decision 2]
|
|
|
|
...
|
|
|
|
## Data Model
|
|
|
|
[Describe main entities and relationships]
|
|
|
|
```
|
|
Entity1 ──────< Entity2
|
|
│
|
|
└──────< Entity3
|
|
```
|
|
|
|
## External Integrations
|
|
|
|
| Service | Purpose | Documentation |
|
|
|---------|---------|---------------|
|
|
| [Service] | [Purpose] | [Link] |
|