#unity #command-line-tool #tool #project-management #development #cli

app dev_environment_launcher

Dev Environment Launcher is a command-line tool to help manage and open development projects for work environments like Unity and Rust

2 unstable releases

0.2.0 Jul 28, 2024
0.1.0 Jul 23, 2024

#240 in Development tools

Custom license

35KB
789 lines

Test dependency status License: MIT Crates.io Download

Dev Environment Launcher

Dev Environment Launcher is a command-line tool to help manage and open development projects for work environments like Unity and Rust.

Features

  • Open Projects: Easily open Unity and Rust projects from specified paths.
  • Recent Projects: Keep track of recent projects and select from them interactively.
  • Configuration: Customize IDE and editor paths for Unity and Rust.

Roadmap

  • Auto-Completion: Add shell auto-completion for commands and options.
  • Interactive Prompts Enhancements: Improve the interactive menu to include project metadata and support batch operations.
  • Detailed Logs: Add detailed logs for significant operations, including project opening, configuration changes, and errors.
  • Verbose Mode: Add a verbose mode to display detailed logs in the console.
  • Support More Project/Environment Types: Add support for various project types.
  • Modular Architecture: Design the system to allow easy addition of new project types.
  • Project Templates: Support multiple configurable environment templates for projects.

Installation

  1. Clone the repository:
    git clone https://github.com/bornacvitanic/dev_environment_launcher.git
    
  2. Navigate to the project directory:
    cd dev_environment_launcher
    
  3. Build the project:
    cargo build --release
    
  4. Run the executable:
    ./target/release/dev_environment_launcher
    

Usage

Usage: devenv [SUBCOMMAND]

A tool to open development project workspaces

Subcommands:
    Path <path>        Specify a project path to open
    Open <index>       Specify a recent project index to open
    Remove <index>     Specify a recent project index to remove
    Clear              Clears all recent projects
    Options            List recent projects
    Recent             Interactive menu to select recent project to open

Examples

  • Open a project by path:
devenv path /path/to/your/project
  • Open a recent project by index:
devenv open 2
  • Remove a recent project by index:
devenv remove 1
  • Clear all recent projects:
devenv clear

-List recent projects:

devenv options

-Interactive menu to select recent project:

devenv recent

Configuration

Upon first run, the application creates a default configuration file at:

  • Windows: %APPDATA%/dev_environment_launcher/config.toml
  • macOS: ~/Library/Application Support/dev_environment_launcher/config.toml
  • Linux: ~/.config/dev_environment_launcher/config.toml

Configuration File

[rust]
ide_path = "path/to/rust/ide"

[unity]
editor_base_path = "path/to/unity/editor/base (before the version number folder)" 

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • structopt - Library for setting up a basic command-line interface (CLI)
  • structopt-derive - Derive macros for structopt
  • dialoguer - Library for handling user input
  • toml - Library for handling TOML config files
  • config - Library for managing configuration files
  • serde - Library for serializing and deserializing Rust data structures
  • serde_derive - Derive macros for serde

Contact

Dependencies

~4–12MB
~130K SLoC