ASPIRETUI


NameASPIRETUI JSON
Version 0.0.4 PyPI version JSON
download
home_page
SummaryA framework for a line based TUI
upload_time2023-11-09 11:12:24
maintainer
docs_urlNone
author
requires_python>=3.3
licenseCopyright 2023 Simon Arjuna Erat, Switzerland Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords tui console
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![Logo](./docs/ASPIRE_Logo.png)

Achieving Seamless Performance In Real-time Environments
================================================================
> **Note:** \
> This is the official rewrite of TUI/SWARM by the original inventor/author Simon Arjuna Erat. \
> Please be aware that this is an unstable work in progress, and some references in this text may refer to habits/behaviour based on the original BASH source code.

Brief
-----
ASPIRE is a Python 3.11+ module that offers an easy to use line-based text user interface framework.

It aims to make the console output more appealing to end users and provide developers an easy to use framework for 'everyday tasks' and to put their output left, center and right oriented with some 'dividers' (header, title) using a theme for presentation.


Target Audience
---------------
For developers aiming to enhance the user experience with the console.
![HelloWorld](./docs/help/Basic_HelloWorld/HelloWorld.jpg)

Detail
------
ASPIRE simplifies common tasks by providing various functions that wrap around frequently used code. It serves as a three-way interface between the system (MS Windows, any *Nix based system, and even Apple's iOS), the author/developer, and the end user.

One of ASPIRE's key focuses is to enhance the console experience by offering themable designs. You, as the author, can choose from a variety of ASCII-based themes that include colors, symbols, bold and underline fonts, and more. Users also have the option to select a different theme or even create their own (if you allow so).

ASPIRE is designed with simplified usability in mind for both end users and developers. \
These functions aim to streamline interactions and improve the overall experience.

To name a few of these convenient functions:\
All descriptions are based on the default theme.

| Name | Description |
|------|-------------|
| header	| Will print a blue background accross the whole console 'surrounded' by borders.<br>It will accept up to 3 strings.|
| title		| Will print the borders, and fill the space in between with the foreground color (white),<br> and use the background color for the font.<br>This function accepts only 1 string, which will be printed in the center of the line.|
| print		|  Standart output, prints borders in foreground color and accepts up to 3 strings.<br>Will allign them as follows:<br>1. Left<br>2. Left,  Right<br>3. Left, Center, Right |
| ask		| Printing borders and the passed question, encapsules the default ``input``, returns the input. |
| yesno		| Similar to ``ask``, but will only accept yes/no, returns according bool. |
| select	| Pass a list as argument, uses ``list`` to print them. Returns the string of the shown/entered number. |
| list 		| Used by ``select`` to print a number to each item of the list |
| bar 		| Provides a progress bar with different options that can be used within the project. |



Usage
-----

The code for the previous preview would look as simple as this, which is how you can use it as library in your projects:

```py
from aspire import Aspire as tui

tui.header("Aspire by (sea/sri-arjuna)", "Date + Time")
tui.title("Hello World")
tui.printe("Left string", "Center string", "Right string")
tui.press()
```

This is how "Hello World" (using ``header``, ``title`` and ``print``) can look like:
![preview](./docs/HelloWorld.jpg)

- There are some test projects in [[examples](./examples)]
- You can find more detailed help in [[docs/help](./docs/help)]

----


Installation
------------

At least thats where i want to go:
```
pip install ASPIRE
```


For an example list of different use cases, please see: [[USAGE](./docs/USAGE.md)]

Example:
--------

 How the original BASH shell variant with the classic theme looked like: (just to demonstrate how it might look.

![Preview of old VHS bash variant](https://github.com/sri-arjuna/vhs/blob/master/screenshots/example-with-progressbar.jpg?raw=true)

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "ASPIRETUI",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.3",
    "maintainer_email": "Simon Arjuna Erat <erat.simon@gmail.com>",
    "keywords": "TUI,console",
    "author": "",
    "author_email": "Simon Arjuna Erat <erat.simon@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/97/a3/51018ae1ec4ef0487ed9dd52c5f1db3763db0aca6a0cac7ae6bd5c7e7759/ASPIRETUI-0.0.4.tar.gz",
    "platform": null,
    "description": "![Logo](./docs/ASPIRE_Logo.png)\r\n\r\nAchieving Seamless Performance In Real-time Environments\r\n================================================================\r\n> **Note:** \\\r\n> This is the official rewrite of TUI/SWARM by the original inventor/author Simon Arjuna Erat. \\\r\n> Please be aware that this is an unstable work in progress, and some references in this text may refer to habits/behaviour based on the original BASH source code.\r\n\r\nBrief\r\n-----\r\nASPIRE is a Python 3.11+ module that offers an easy to use line-based text user interface framework.\r\n\r\nIt aims to make the console output more appealing to end users and provide developers an easy to use framework for 'everyday tasks' and to put their output left, center and right oriented with some 'dividers' (header, title) using a theme for presentation.\r\n\r\n\r\nTarget Audience\r\n---------------\r\nFor developers aiming to enhance the user experience with the console.\r\n![HelloWorld](./docs/help/Basic_HelloWorld/HelloWorld.jpg)\r\n\r\nDetail\r\n------\r\nASPIRE simplifies common tasks by providing various functions that wrap around frequently used code. It serves as a three-way interface between the system (MS Windows, any *Nix based system, and even Apple's iOS), the author/developer, and the end user.\r\n\r\nOne of ASPIRE's key focuses is to enhance the console experience by offering themable designs. You, as the author, can choose from a variety of ASCII-based themes that include colors, symbols, bold and underline fonts, and more. Users also have the option to select a different theme or even create their own (if you allow so).\r\n\r\nASPIRE is designed with simplified usability in mind for both end users and developers. \\\r\nThese functions aim to streamline interactions and improve the overall experience.\r\n\r\nTo name a few of these convenient functions:\\\r\nAll descriptions are based on the default theme.\r\n\r\n| Name | Description |\r\n|------|-------------|\r\n| header\t| Will print a blue background accross the whole console 'surrounded' by borders.<br>It will accept up to 3 strings.|\r\n| title\t\t| Will print the borders, and fill the space in between with the foreground color (white),<br> and use the background color for the font.<br>This function accepts only 1 string, which will be printed in the center of the line.|\r\n| print\t\t|  Standart output, prints borders in foreground color and accepts up to 3 strings.<br>Will allign them as follows:<br>1. Left<br>2. Left,  Right<br>3. Left, Center, Right |\r\n| ask\t\t| Printing borders and the passed question, encapsules the default ``input``, returns the input. |\r\n| yesno\t\t| Similar to ``ask``, but will only accept yes/no, returns according bool. |\r\n| select\t| Pass a list as argument, uses ``list`` to print them. Returns the string of the shown/entered number. |\r\n| list \t\t| Used by ``select`` to print a number to each item of the list |\r\n| bar \t\t| Provides a progress bar with different options that can be used within the project. |\r\n\r\n\r\n\r\nUsage\r\n-----\r\n\r\nThe code for the previous preview would look as simple as this, which is how you can use it as library in your projects:\r\n\r\n```py\r\nfrom aspire import Aspire as tui\r\n\r\ntui.header(\"Aspire by (sea/sri-arjuna)\", \"Date + Time\")\r\ntui.title(\"Hello World\")\r\ntui.printe(\"Left string\", \"Center string\", \"Right string\")\r\ntui.press()\r\n```\r\n\r\nThis is how \"Hello World\" (using ``header``, ``title`` and ``print``) can look like:\r\n![preview](./docs/HelloWorld.jpg)\r\n\r\n- There are some test projects in [[examples](./examples)]\r\n- You can find more detailed help in [[docs/help](./docs/help)]\r\n\r\n----\r\n\r\n\r\nInstallation\r\n------------\r\n\r\nAt least thats where i want to go:\r\n```\r\npip install ASPIRE\r\n```\r\n\r\n\r\nFor an example list of different use cases, please see: [[USAGE](./docs/USAGE.md)]\r\n\r\nExample:\r\n--------\r\n\r\n How the original BASH shell variant with the classic theme looked like: (just to demonstrate how it might look.\r\n\r\n![Preview of old VHS bash variant](https://github.com/sri-arjuna/vhs/blob/master/screenshots/example-with-progressbar.jpg?raw=true)\r\n",
    "bugtrack_url": null,
    "license": "Copyright 2023 Simon Arjuna Erat, Switzerland  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \u201cSoftware\u201d), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \u201cAS IS\u201d, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
    "summary": "A framework for a line based TUI",
    "version": "0.0.4",
    "project_urls": {
        "Bug Reports": "https://github.com/sri-arjuna/ASPIRE/issues",
        "Help / Manual": "https://github.com/sri-arjuna/ASPIRE/tree/master/docs/help",
        "Homepage": "https://github.com/sri-arjuna/ASPIRE",
        "Source": "https://github.com/sri-arjuna/ASPIRE/"
    },
    "split_keywords": [
        "tui",
        "console"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3b141e60b934e34fd6ad78956d55a727f158e96171e8e7867ac45ea66dd1485b",
                "md5": "4ef23857b36c70cf242691a70dbfcca7",
                "sha256": "e8bbb1a8e24403e0b1ae2d07a328d473f64967835584bc6cad8a4167404d5660"
            },
            "downloads": -1,
            "filename": "ASPIRETUI-0.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4ef23857b36c70cf242691a70dbfcca7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.3",
            "size": 16747,
            "upload_time": "2023-11-09T11:12:22",
            "upload_time_iso_8601": "2023-11-09T11:12:22.770013Z",
            "url": "https://files.pythonhosted.org/packages/3b/14/1e60b934e34fd6ad78956d55a727f158e96171e8e7867ac45ea66dd1485b/ASPIRETUI-0.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "97a351018ae1ec4ef0487ed9dd52c5f1db3763db0aca6a0cac7ae6bd5c7e7759",
                "md5": "a83b1fd93d666f831a994d8e8eef7b93",
                "sha256": "2e2c906d91a0c2b949f8ff971b7a835062ffa6493236a947cee822e246422cbb"
            },
            "downloads": -1,
            "filename": "ASPIRETUI-0.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "a83b1fd93d666f831a994d8e8eef7b93",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.3",
            "size": 15909,
            "upload_time": "2023-11-09T11:12:24",
            "upload_time_iso_8601": "2023-11-09T11:12:24.384479Z",
            "url": "https://files.pythonhosted.org/packages/97/a3/51018ae1ec4ef0487ed9dd52c5f1db3763db0aca6a0cac7ae6bd5c7e7759/ASPIRETUI-0.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-09 11:12:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sri-arjuna",
    "github_project": "ASPIRE",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "aspiretui"
}
        
Elapsed time: 0.28149s