Expand description
CarWash - A beautiful TUI for managing multiple Rust projects
CarWash provides a terminal user interface for managing Rust projects, checking dependencies, and running cargo commands across multiple projects with workspace support.
§Features
- Multi-Project Management: Scan and manage multiple Rust projects in a single view
- Workspace Support: Full support for Cargo workspaces with hierarchical project organization
- Dependency Checking: Check for outdated dependencies across all projects
- Parallel Execution: Run cargo commands in parallel across multiple projects
- Beautiful TUI: Modern terminal interface with intuitive navigation
- Command History: Built-in command history for quick access to previous commands
§Getting Started
CarWash is primarily used as a CLI application. You can scan a directory for Rust projects:
carwash /path/to/projects
carwash . # Scan current directory§Library Usage
While CarWash is primarily a CLI application, you can use its library components:
ⓘ
use carwash::project::Project;
use carwash::runner::UpdateQueue;
// Use public APIs for project discovery and management§Modules
app- Application state managementcache- Cache management for project datacomponents- UI components (palette, text input, help, etc.)events- Event handling and command processingproject- Project structure and dependency managementrunner- Task execution and update checkingtree- Hierarchical project tree structure with lazy loadingui- Terminal UI rendering
Modules§
- app
- Application state management
- cache
- Cross-platform caching for dependency update checks
- components
- UI components for the CarWash application
- config
- Configuration management for CarWash
- events
- Event handling and command processing
- handlers
- Action handlers for state mutations
- project
- Project structure and dependency management
- runner
- Task execution and update checking
- settings
- tree
- Hierarchical project tree structure with lazy loading support
- ui
- UI module for CarWash
Structs§
- Args
- Command-line arguments for CarWash
Traits§
- Parser
- Parse command-line arguments into
Self.
Derive Macros§
- Parser
- Generates the
Parserimplementation.