How edfloreshz/devmode works
Devmode is a local-first project and workspace manager with CLI, terminal, and desktop interfaces over shared core data. The main workflow is to clone, create, track, or discover repositories; organize their paths and metadata; then search or group them into workspaces and open a workspace in an editor. The graph preserves those domain stages and the shared Git, discovery, and persistence layers. Some command and UI implementations are unsampled, so their links rely on documented shared behavior and are limited to those capabilities.
Main entry points: repo Repo operations · workspace Workspace operations · store.rs Repository registry · main.rs CLI entry
Components 20
User interfaces
- CLI entry
crates/cli/src/main.rs - Repo commands
crates/cli/src/commands/repo - Workspace commands
crates/cli/src/commands/workspace - Terminal UI
crates/tui/src/app.rs - Terminal views
crates/tui/src/ui/mod.rs - Desktop app
crates/ui/src/app.rs - Desktop screens
crates/ui/src/screen
Repository management
- Repo operations
crates/cli/src/commands/repo - Discovery and sync
crates/core/src/discovery.rs - Layout and relayout
crates/core/src/layout.rs - Local Git
crates/core/src/git/mod.rs
Workspaces
- Workspace operations
crates/cli/src/commands/workspace - Workspace switch
crates/cli/src/commands/workspace/switch.rs
Shared core
- Repository registry
crates/core/src/registry/store.rs - Workspace store
crates/core/src/workspace/store.rs - Configuration
crates/core/src/config.rs
Other components
- Developer
- Local filesystem
- Git remote
- Configured editor
Connections 30
- Developer → CLI entry: runs commands
- Developer → Terminal UI: browses and edits
- Developer → Desktop app: browses and edits
- CLI entry → Repo commands: dispatches repo
- CLI entry → Workspace commands: dispatches workspace
- Repo commands → Repo operations: invokes
- Workspace commands → Workspace operations: invokes
- Terminal UI → Terminal views: renders
- Terminal UI → Repo operations: performs repo actions
- Terminal UI → Workspace operations: performs workspace actions
- Desktop app → Desktop screens: dispatches messages
- Desktop screens → Repo operations: performs repo actions
- Desktop screens → Workspace operations: performs workspace actions
- Desktop screens → Discovery and sync: scans and resolves
- Repo operations → Local Git: clones and inspects
- Repo operations → Layout and relayout: places and relayouts
- Repo operations → Repository registry: tracks and queries
- Discovery and sync → Local Git: finds repos and remotes
- Discovery and sync → Repository registry: checks and updates
- Local Git → Local filesystem: reads and writes repos
- Local Git → Git remote: clones over Git
- Layout and relayout → Local filesystem: moves repos
- Layout and relayout → Repository registry: updates paths
- Workspace operations → Workspace store: manages workspaces
- Workspace operations → Repository registry: resolves repo members
- Workspace switch → Workspace store: reads members and settings
- Workspace switch → Repository registry: resolves member paths
- Workspace switch → Configured editor: opens workspace
- CLI entry → Configuration: uses configuration
- Repo operations → Configuration: reads repo settings