Giter VIP home page Giter VIP logo

pro-cli's Introduction

Pro cli

Simple cli for local project management

Usage

  $ pro help                  # Get help message
  $ pro list                  # List projects
  $ pro create <PROJECT_NAME> # Bootstrap project from basic template (will be fixed hopefully)
  $ pro path   <PROJECT_NAME> # Get project absolute path
  $ pro remove <PROJECT_NAME> # Remove project directory
  $ pro open   <PROJECT_NAME> # Open project in code editor
  $ pro comps                 # Prints zsh comletions in stdout

Configuration

With first start Pro-cli will create config file in YOUR_HOME_FOLDER/.config/pro/config.toml

Config should have two fields: project_path and code_editor

Example config:

project_path = "/home/projects/"
code_editor = "nvim"

Features implemented

  • Open project with code editor
  • List projects in project dir
  • Bootstrap projects from template
  • Deleting project folder
  • Configuration in TOML file
  • User friendly error messages
  • Command line autosuggestions for projects
  • User friendly installation. Add to cargo repo

Build from source

  $ cargo build --release --bin pro --out-dir YOUR_BIN_DIR -Z unstable-options

pro-cli's People

Contributors

tyrkinn avatar

Watchers

 avatar

pro-cli's Issues

[FEATURE] Fix scary error messages

Is your feature request related to a problem? Please describe.
When running pro-cli with broken config (with missing field for example), I'm getting error like this

thread 'main' panicked at 'Can't deserialize config file contents: Error { inner: ErrorInner { kind: Custom, line: Some(0), col: 0, at: Some(0), message: "missing field `editor_flags`", key: [] } }', src/config.rs:58:48
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[1]    13072 abort      pro list

This message is not user friendly, so I want to have message like this

[ERROR] Can't read config: missing field `editor_flags`

Describe the solution you'd like
Handle possible errors with match and print friendly error messages

[FEATURE] Prompt style config init

Describe the solution you'd like
Add pro init command that will answer few questions in prompt way.
Like this

$ pro init
Projects dir (default: $HOME/projects) -> 
Preferred editor shell command (default: vim) ->
Your config successfully updated!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.