Metadata-Version: 2.1
Name: neucli
Version: 0.2.5
Summary: Neulabs cli
Home-page: https://github.com/neulabscom/neulabs-cli
Author: Neulabs
Author-email: tech@neulabs.com
License: Apache 2.0
Description: ---
        id: index
        title: Neucli
        ---
        
        # Neulabs CLI
        
        The neulabs CLI is used to aggregate all those activities and commands useful to various developers, reducing development costs and creating shared standards.
        The goal of `neucli` is to facilitate the generation and use of standard components such as documentation structure, GitHub actions for releases, and more.
        
        **Neucli** is based on [Taskfile](https://taskfile.dev/), a task runner that allows the creation of modular CLIs through YAML configurations. Each command has its own structure, some of them are Python modules, while others are simple Bash scripts. This approach makes it easy to add additional modules in various programming languages, and you can also create your own custom commands locally and add them to the CLI.
        
        ## Installation
        
        ### Requirements
        - Python >= 3.8 \[[install](https://www.python.org/downloads/)\]
        - Nodjs >= 16.14 \[[install](https://github.com/nvm-sh/nvm)\]
        - Homebrew (only on MacOS)
        
        ### Steps
        
        1. Donwload **[taskfiles/cli/cli.yml](https://github.com/neulabscom/neulabs-cli/raw/main/taskfiles/cli/cli.yml)** from [neulabs-cli](https://github.com/neulabscom/neulabs-cli) repository
        2. Install **task** command
           - [ *Linux* ] `npm install -g @go-task/cli`
           - [ *MacOS* ] `brew install go-task`
        3. Install **neucli**:
            ```
            task --taskfile cli.yml installer
            task --taskfile cli.yml deps:all
            ```
        4. Delete **cli.yml** and restart terminal
        5. Run `neucli help`
        
        ## Getting started
        
        ### Help command
        
        ```
        neucli help
        ```
        
        ### Summary command
        
        ```
        neucli summary -- command
        ```
        
        ### Pass args to command
        
        ```
        neucli command -- -opt-1 value --opt-2 -x --zyx
        ```
        
        ### Own cli commands
        
        - In the file `~/.neulabs-cli/Taskfile.local.yml` you can add your own commands as desired.
        - Then you can use your command with `neucli local:command-name`
        
        ## Dev mode
        
        **Setup**
            git clone https://github.com/neulabscom/neulabs-cli.git && cd neulabs-cli
            git submodule update --init --recursive
        
            ./bin/neucli dev:setup:installer
        
            source .activate
            neucli cli:deps:all
        
        **Test neucli commands**
        
            source .activate
            neucli --debug dev:utils:lint
        
        **Test installer with debug mode**
        
            neucli --debug cli:installer
        
Platform: UNKNOWN
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
