mirror of
https://github.com/pawelorzech/Fuzzel.git
synced 2026-01-29 19:54:30 +00:00
- Update auth endpoints: POST /session and /session/magic_link - Use card number (Int) instead of card ID in API paths - Add separate card action endpoints: closure, triage, goldness, watch - Implement wrapped request objects for all create/update operations - Move tags to account level (GET /tags) - Update notification endpoints to use /reading suffix - Change HTTP methods from PATCH to PUT for updates - Update all DTOs with correct field names and structures - Update repository implementations for new API structure
43 lines
1.3 KiB
Markdown
43 lines
1.3 KiB
Markdown
# Fuzzel
|
|
|
|
Fuzzel is an Android client for [Fizzy](https://fizzy.io), the card-based project management tool from 37signals.
|
|
|
|
## Building
|
|
|
|
```bash
|
|
./gradlew assembleDebug
|
|
```
|
|
|
|
## Architecture
|
|
|
|
The app follows Clean Architecture with the following layers:
|
|
|
|
- **Domain** - Business logic, models, and repository interfaces
|
|
- **Data** - API services, DTOs, and repository implementations
|
|
- **Presentation** - ViewModels and Compose UI
|
|
|
|
## API Integration
|
|
|
|
The app integrates with the Fizzy API using the following key endpoints:
|
|
|
|
### Authentication
|
|
- `POST /session` - Request magic link
|
|
- `POST /session/magic_link` - Verify magic link code
|
|
- Personal Access Token support via `GET /my/identity.json`
|
|
|
|
### Resources
|
|
- **Boards**: CRUD operations at `/boards`
|
|
- **Cards**: Operations use card `number` (not ID) at `/cards/{cardNumber}`
|
|
- **Card Actions**: Separate endpoints for close (`/closure`), triage (`/triage`), priority (`/goldness`), watch (`/watch`)
|
|
- **Tags**: Account-level tags at `/tags`, card taggings at `/cards/{cardNumber}/taggings`
|
|
- **Comments**: Nested under cards at `/cards/{cardNumber}/comments`
|
|
- **Steps**: Nested under cards at `/cards/{cardNumber}/steps`
|
|
- **Notifications**: Mark read via `POST /notifications/{id}/reading`
|
|
|
|
## Tech Stack
|
|
|
|
- Kotlin
|
|
- Jetpack Compose
|
|
- Hilt (DI)
|
|
- Retrofit + Moshi
|
|
- Coroutines + Flow
|