Skip to main content

A simple framework to help you build scripts faster!

Project description

Scripto

Build Project linting: pylint Python Version from PEP 621 TOML PyPI - Version PyPI - Downloads

Are you sick of writing long and annoying argparse initialization code? Worry no more - the future is here!

Scripto is a Python package designed to transform your scripts into a powerful CLI tool using decorators. As in the example below, you can use the @script.register() decorator on your main business logic functions to effortlessly generate a feature-rich command-line interface.

Features

  • Seamless integration with argparse.
  • Simple and intuitive syntax inspired by Flask.
  • Automatically generates CLI commands from decorated functions.
  • Ideal for turning scripts into organized and user-friendly command-line tools.

Usage

  1. Install Scripto. You can install Scripto using pip:

    pip install scripto
    
  2. Decorate your main business logic functions with @script.register().

  3. Run your script to enjoy the generated CLI:

    from scripto.app import Scripto
    
    script = Scripto('script')
    
    @script.register()
    def my_command(arg1, arg2):
        """
        Description of your command.
        """
        # Your business logic here
    
    if __name__ == "__main__":
        script.run()
    

Complex Examples

See the example scripts provided.

About the rationale

We all like the simple automations, and nifty little scripts play a vital role in the life of every developer.

Many times, what was a simple 3 line script turned into a slightly larger one, and then all of your friends want to use it too.

Which is when you find out, your user interface sucks.

This framework aims to simplify the creation of the command line interface of such scripts.

Project details


Download files

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

Source Distribution

Scripto-0.0.14.tar.gz (43.3 kB view details)

Uploaded Source

Built Distribution

Scripto-0.0.14-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file Scripto-0.0.14.tar.gz.

File metadata

  • Download URL: Scripto-0.0.14.tar.gz
  • Upload date:
  • Size: 43.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for Scripto-0.0.14.tar.gz
Algorithm Hash digest
SHA256 bf249aa3b104dfa93539923f2a30077da1b35fa73776ad090750c6a444debd90
MD5 2ae40dba780ba99578d3131748b253bb
BLAKE2b-256 36ae3e0999da20a5c6928172c4df5b7afb7f1150489d592c213d3f94aeea2b5e

See more details on using hashes here.

File details

Details for the file Scripto-0.0.14-py3-none-any.whl.

File metadata

  • Download URL: Scripto-0.0.14-py3-none-any.whl
  • Upload date:
  • Size: 31.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for Scripto-0.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 d392af19fc7d3097dec7b491dcd5c3e7551aebce35ed5fe9be944d8ca2f79b23
MD5 162801a43bd90a97f2dd45d30912e8ec
BLAKE2b-256 9c440c9df9f07e4d31dc5c46a6188c2ee0a624aee8489600c8c10a832c6cfff8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page