# urur Roadmap
## Vision
urur is a multi-repo workspace manager for developers who work across many distributed Git repositories. It provides a single configuration file to manage cloning, syncing, and executing commands across all repositories.
---
## Phase 1: Core Foundation (v0.1.0) - COMPLETE
Basic workspace management with sequential operations.
### Features
- [x] Initialize workspace with `.urur.toml`
- [x] Add/remove repositories to config
- [x] Clone repositories (single and batch)
- [x] Check repository status (branch, dirty, ahead/behind)
- [x] Pull/fetch operations
- [x] Execute arbitrary commands across repos
- [x] Filter repos by group, tag, or name
- [x] Group management (create, delete, add/remove repos)
### Config Format
- [x] TOML-based configuration
- [x] Per-repo settings (branch, path, shallow, tags)
- [x] Default settings
- [x] Named groups
---
## Phase 2: Parallel Operations (v0.2.0) - NOT STARTED
Improve performance with concurrent operations.
### Features
- [ ] Parallel clone operations
- [ ] Parallel pull/fetch operations
- [ ] Parallel command execution
- [ ] Configurable parallelism level (`defaults.parallel`)
- [ ] Progress bars with indicatif
### Technical
- [ ] Use `tokio::spawn` for concurrent tasks
- [ ] Semaphore for limiting concurrency
- [ ] Aggregated progress reporting
---
## Phase 3: Enhanced UX (v0.3.0) - NOT STARTED
Better user experience and feedback.
### Features
- [ ] Colored output for status display
- [ ] Interactive mode for bulk operations
- [ ] Dry-run mode for destructive operations
- [ ] Verbose logging with `-v` flag
- [ ] JSON output format for scripting
### Status Display
- [ ] Table format for multi-repo status
- [ ] Summary statistics (X clean, Y dirty, Z not cloned)
- [ ] Highlight repos needing attention
---
## Phase 4: Advanced Git Operations (v0.4.0) - NOT STARTED
More sophisticated Git integration.
### Features
- [ ] Checkout specific branch across repos
- [ ] Create branch across repos
- [ ] Stash/unstash across repos
- [ ] Commit message template for batch commits
- [ ] Push operations
### Remote Management
- [ ] Per-repo remote configuration
- [ ] Multiple remotes per repo
- [ ] Credential helper integration
---
## Phase 5: Dependency & Ordering (v0.5.0) - NOT STARTED
Handle relationships between repositories.
### Features
- [ ] Declare dependencies between repos
- [ ] Topological ordering for operations
- [ ] Build order hints
- [ ] Linked worktrees support
---
## Phase 6: Sync Profiles (v0.6.0) - NOT STARTED
Different configurations for different contexts.
### Features
- [ ] Named profiles (e.g., "work", "personal", "oss")
- [ ] Profile switching
- [ ] Profile-specific defaults
- [ ] Inherit/extend profiles
---
## Phase 7: Templates & Scaffolding (v0.7.0) - NOT STARTED
Workspace templates for common setups.
### Features
- [ ] Export workspace as template
- [ ] Import from template
- [ ] Template variables
- [ ] Community templates
---
## Future Ideas
- **Watch mode**: Monitor repos for changes
- **Hooks**: Pre/post operation hooks
- **Plugins**: Extensible command system
- **TUI**: Full terminal UI with ratatui
- **Integration**: VS Code extension, shell completions
- **Cloud sync**: Share workspace configs
---
## Version History
| v0.1.0 | Complete | Core foundation - sequential operations |
| v0.2.0 | Planned | Parallel operations |
| v0.3.0 | Planned | Enhanced UX |
| v0.4.0 | Planned | Advanced Git operations |
| v0.5.0 | Planned | Dependencies & ordering |
| v0.6.0 | Planned | Sync profiles |
| v0.7.0 | Planned | Templates & scaffolding |