docs: sync markdown docs with actual codebase state
- README.md: update Phase 4 status to reflect Android preliminaries done (file-watcher gating, tauri-plugin-credentials, safe area insets, Android targets configured) but init/build not yet run; add tauri-plugin-credentials to project structure; expand docs/ tree; add newer GUI features (workspace rename, safe area insets, accessibility); add setup screen screenshot; update What's Next to note Phase 4 is in progress - PLAN.md: fix Phase 4 checkboxes — android init and build-succeeds were marked [x] but gen/android/ does not exist; correct cfg gate annotation from #[cfg(not(mobile))] to #[cfg(not(target_os = "android"))]; update dependency snippet to reflect actual keyring/zeroize/sha2/quick-xml usage; bump Last Updated to 2026-04-17 - docs/DEVELOPMENT.md: add WEBKIT_DISABLE_DMABUF_RENDERER=1 Wayland note to tauri dev command https://claude.ai/code/session_01MypN7wPNqeSgw8b5DYpMc1
This commit is contained in:
parent
67ac43e527
commit
7bef6b07bc
15
PLAN.md
15
PLAN.md
|
|
@ -530,8 +530,11 @@ pub fn delete_credentials(domain: &str) -> Result<()>;
|
|||
Add to `onyx-core/Cargo.toml`:
|
||||
```toml
|
||||
reqwest = { version = "0.12", features = ["json", "rustls-tls"] }
|
||||
keyring = "3.0"
|
||||
# TODO: Evaluate dav-client or implement custom WebDAV
|
||||
keyring = { version = "3", features = ["apple-native", "windows-native", "sync-secret-service"], optional = true }
|
||||
zeroize = "1"
|
||||
sha2 = "0.10"
|
||||
quick-xml = "0.36"
|
||||
# WebDAV implemented as custom client using reqwest + quick-xml for PROPFIND parsing
|
||||
```
|
||||
|
||||
### Features
|
||||
|
|
@ -842,11 +845,11 @@ npm run tauri ios build
|
|||
|
||||
#### Features
|
||||
|
||||
- [x] Gate file-watcher initialization behind `#[cfg(not(mobile))]`
|
||||
- [x] Gate file-watcher initialization behind `#[cfg(not(target_os = "android"))]`
|
||||
- [x] Install Android Studio + NDK, configure env vars
|
||||
- [x] Add Android Rust targets
|
||||
- [x] `npm run tauri android init` (generates `gen/android/`)
|
||||
- [x] Confirm `npm run tauri android build` succeeds
|
||||
- [ ] `npm run tauri android init` (generates `gen/android/`)
|
||||
- [ ] Confirm `npm run tauri android build` succeeds
|
||||
- [ ] Basic smoke test: app launches, workspace setup, create a task
|
||||
- [ ] Set up macOS CI for iOS builds
|
||||
- [ ] `npm run tauri ios init` (generates `gen/ios/`)
|
||||
|
|
@ -1054,6 +1057,6 @@ This project is free and open-source software licensed under GPL v3.
|
|||
|
||||
---
|
||||
|
||||
**Last Updated**: 2026-04-15
|
||||
**Last Updated**: 2026-04-17
|
||||
**Document Version**: 4.3
|
||||
**Status**: Ready to Implement - Milestone-Driven Plan
|
||||
|
|
|
|||
15
README.md
15
README.md
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
A **local-first, cross-platform tasks application** built with Rust. Inspired by Google Tasks, designed for speed and flexibility.
|
||||
|
||||

|
||||
|
||||
## Core Principles
|
||||
|
||||
- **Local-First**: Your data, your folder, your control
|
||||
|
|
@ -21,7 +23,10 @@ onyx/
|
|||
│ └── onyx-cli/ # CLI frontend
|
||||
├── apps/
|
||||
│ └── tauri/ # Tauri v2 GUI (Svelte 5 + Tailwind CSS 4)
|
||||
│ └── tauri-plugin-credentials/ # Cross-platform credential storage plugin
|
||||
└── docs/
|
||||
├── API.md # Core library API reference
|
||||
└── DEVELOPMENT.md # Development guide
|
||||
```
|
||||
|
||||
## Project Status
|
||||
|
|
@ -29,7 +34,7 @@ onyx/
|
|||
- **Phase 1** (Core + CLI): Complete
|
||||
- **Phase 2** (WebDAV Sync): Complete — backend, CLI, and GUI all wired
|
||||
- **Phase 3** (GUI MVP): Complete
|
||||
- **Phase 4** (Mobile): Tauri Android cfg-gated, needs `tauri android init` + build
|
||||
- **Phase 4** (Mobile): In progress — Android preliminaries done (file-watcher gating, `tauri-plugin-credentials`, safe area insets, Android targets configured); needs `tauri android init`, build verification, and iOS setup
|
||||
|
||||
### Core Library (`onyx-core`)
|
||||
- Data models (Task, TaskList, AppConfig, WorkspaceConfig)
|
||||
|
|
@ -59,13 +64,15 @@ onyx/
|
|||
- Due date picker/editor with optional time
|
||||
- Subtask hierarchy with three-panel slide navigation
|
||||
- Move tasks between lists
|
||||
- List rename, group-by-date toggle, delete completed tasks
|
||||
- List rename, workspace rename, group-by-date toggle, delete completed tasks
|
||||
- Keyboard shortcuts (Escape priority chain)
|
||||
- WebDAV setup flow with credential auto-population
|
||||
- File watcher (auto-reloads on external changes)
|
||||
- Auto-sync with configurable interval, status indicators
|
||||
- Swipe gestures on mobile (swipe to toggle completion)
|
||||
- Custom confirmation dialogs
|
||||
- Safe area insets for mobile (viewport-fit=cover)
|
||||
- Accessibility: ARIA labels/roles, keyboard handlers, `prefers-reduced-motion` support
|
||||
- Desktop packaging (Linux: AppImage + .deb; Windows: MSI)
|
||||
|
||||
## Development Setup
|
||||
|
|
@ -211,8 +218,8 @@ cargo test -- --nocapture
|
|||
|
||||
## What's Next?
|
||||
|
||||
- **Phase 4**: Mobile support (iOS & Android via Tauri v2 mobile)
|
||||
- **Phase 5**: GUI advanced features (rich markdown editor, search/filter)
|
||||
- **Phase 4** (in progress): Complete Android build (`tauri android init` + verification), iOS setup on macOS CI
|
||||
- **Phase 5**: GUI advanced features (rich markdown editor, search/filter, change storage folder)
|
||||
- **Phase 6**: Mobile polish and platform-specific integrations
|
||||
- **Phase 7**: Google Tasks importer and unique features
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ cargo run -p onyx-cli -- --help
|
|||
|
||||
# Run the Tauri GUI
|
||||
cd apps/tauri && npm install
|
||||
npm run tauri dev
|
||||
npm run tauri dev # (Wayland: WEBKIT_DISABLE_DMABUF_RENDERER=1 npm run tauri dev)
|
||||
```
|
||||
|
||||
## Project Structure
|
||||
|
|
|
|||
Loading…
Reference in a new issue