How elijah-mclellan/tailburrow works
TailBurrow is a local-first Tauri desktop archive for browsing and managing furry-art media. Users configure a library and source credentials, import or sync favorites, then search, view, edit, and organize archived items; e621 feeds and comics/pools add remote browsing paths. The graph distinguishes the React entry and feature surfaces from the Rust command boundary, storage, and source adapters. Several backend and UI files were not sampled, so uncertain internal call wiring is omitted; documented capabilities are represented without asserting unverified call sequences.
Main entry points: commands.rs Tauri commands · App.tsx React app entry · library.rs Library files · SettingsPanel.tsx Settings panel
Components 20
Desktop experience
- React app entry
src/App.tsx - Library workspace
src/FavoritesViewer.tsx - Settings panel
src/components/SettingsPanel.tsx
Library workflow
- Library state
src/hooks/useLibraryData.ts - Library browsing
src/components/LibraryPanel.tsx - Media viewer
src/components/ViewerOverlay.tsx - Comic reader
src/components/ComicsPanel.tsx
Sources and sync
- e621 feeds
src/components/FeedsPanel.tsx - Sync controls
src/hooks/useSyncState.ts - FurAffinity adapter
src-tauri/src/fa.rs - Twitter adapter
src-tauri/src/twitter.rs - e621 service
Rust services
- Lock state
src/hooks/useAppLock.ts - Tauri commands
src-tauri/src/commands.rs - SQLite database
src-tauri/src/db.rs - Library files
src-tauri/src/library.rs - App configuration
src-tauri/src/config.rs - Local media files
- Pool cache
src-tauri/src/db.rs
Other components
- Desktop user
Connections 15
- Desktop user → React app entry: opens
- React app entry → Library workspace: renders
- Library state → Tauri commands: invokes
- Sync controls → Tauri commands: invokes
- Lock state → Tauri commands: invokes
- Settings panel → Tauri commands: invokes
- e621 feeds → e621 service: searches
- Tauri commands → SQLite database: reads and writes
- Tauri commands → Library files: manages files
- Tauri commands → App configuration: loads and saves
- Tauri commands → FurAffinity adapter: dispatches sync
- Tauri commands → Twitter adapter: dispatches sync
- Tauri commands → e621 service: fetches and syncs
- Library files → Local media files: stores media
- Tauri commands → Pool cache: caches pools