clius

All-in-one easy CLI python tools


License
CNRI-Python-GPL-Compatible
Install
pip install clius==0.1.3

Documentation

clius

Python tools for EASY, QUICKLY-build and EXTENSIBLE CLIs = your CLI all-in-one swiss knife

[[Development Stage: 3 - Alpha]]

Supports Python 3.

Please make an issue for every problem or wanted feature (or anything else) here: https://gitlab.com/jsmetana/clius/issues

The code is openly available here: https://gitlab.com/jsmetana/clius

Features

  • Argument parsing
  • Logger
    • User-readable format
      • Progress bars
      • Easy to read level designations
      • Date printed only once
      • Text wrapping for 83 characters
    • JSON
    • VERY easy to add support for any other format
  • User input (npm-like)
  • Shell

Specialities

Made w/o using anything else than these modules :

  • sys - arguments reading
  • json - print in JSON format
  • getpass - password input
  • datetime - date and time for printing
  • textwrap - text wrapping in user-readable format

These are used as well, but aren't a requirement.

For requirements we use the beautiful pipenv - which was made by lovely Kenneth Reitz:

https://pypi.org/project/pipenv/

Note: Clius does NOT use logging or cmd modules, even tho they are included in normal Python interpreters - clius should be lightweight and should be able to run where these are not available.

Disclaimer

Some (most) of the features that you saw above are not done yet, but we will try to add them eventually.

The code is not commented yet, but will be in "near" future.

We mention Kenneth Reitz only for his good work in the Python community and for what a lovely person he is (from my perspective - I read his site w/ blog, journals, etc.), he (except pipenv) has nothing to do with this project.

Issues are availiable here: https://gitlab.com/jsmetana/clius/issues.

Tested platforms:

  • Linux
    • Manjaro (build with Architect)
      • Python 3.7
      • zsh
      • Konsole

If you want to apply for testing raise an issue here: https://gitlab.com/jsmetana/clius/issues

Licence

Copyright (C) 2019 Jakub Smetana

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.

If GPL3.0+ is a problem for you, raise an issue on https://gitlab.com/jsmetana/clius/issues.

How to use

This part is [WIP]/[TODO]

Instalation

pip3 install --user clius

For development environment:

git clone https://gitlab.com/jsmetana/clius.git
cd clius
pipenv install --dev

Other info

This part is [WIP]/[TODO]