Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

All-in-one easy CLI python tools

Project description

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 <python-included>:

  • 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]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for clius, version 0.1.5
Filename, size File type Python version Upload date Hashes
Filename, size clius-0.1.5-py3-none-any.whl (16.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size clius-0.1.5.tar.gz (4.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page