<div align="center">
<img src="https://raw.githubusercontent.com/k1shk1n/outlify/main/assets/header.svg" alt="outlify header" width="600">
Structured cli output — beautifully, simply, and dependency-free.
[Overview](#overview) •
[Install](#install) •
[Usage](#usage) •
[Components](#components) •
[License](#license)
<img src="https://raw.githubusercontent.com/k1shk1n/outlify/main/assets/footer.svg" alt="outlify footer" width="600">
[](https://pypi.org/project/outlify/)



[](https://github.com/astral-sh/ruff)
[](https://github.com/astral-sh/uv)
</div>
## Overview
**Outlify** is designed with a focus on streamlined log output, making it perfect for cli tools.
It emphasizes lightweight operation and minimal dependencies, ensuring smooth integration
into any project. The second key aspect of **Outlify** is its beautiful and user-friendly
log formatting, designed to enhance readability and provide a pleasant experience
for developers and their users.
## Install
**Outlify** is available as a Python package and can be easily installed via `pip` from [PyPI](https://pypi.org/project/outlify/).
To install, simply run the following command:
```bash
pip install outlify
```
This will automatically install the latest version of **Outlify**.
## Usage
You can view demos of any available modules by running the following command:
```bash
python -m outlify.module_name
```
For example, to view the demo for the **Panel** module:
```bash
python -m outlify.panel
```
## Components
**Outlify** provides simple, elegant components for clean and structured CLI output — with zero dependencies. They help organize information clearly and improve log readability.
Each component is easy to use and comes with built-in demos. See below for examples and usage.
### Static
<details>
<summary>Panels</summary>
To highlight important text by displaying it within a panel, use `Panel`. Here's how:
```python
from outlify.panel import Panel
print(Panel('A very important text', title='Warning'))
```
To display parameters in a structured format, use the `ParamsPanel`:
```python
from outlify.panel import ParamsPanel
parameters = {'parameter1': 'value1', 'parameter2': 'value2'}
print(ParamsPanel(parameters, title='Startup Parameters'))
```
For more details on how to use Panels, see [Panels](https://k1shk1n.github.io/outlify/latest/components/panel/)
</details>
<details>
<summary>Lists</summary>
If you need a simple titled list in structured output, use `TitledList`:
```python
from outlify.list import TitledList
packages = ['first', 'second', 'third']
print(TitledList(packages))
```
For more details on how to use Lists, see [Lists](https://k1shk1n.github.io/outlify/latest/components/list/)
</details>
<details>
<summary>Styles</summary>
To styling text and **Outlify** elements, use `Colors` and `Styles`:
```python
from outlify.style import Colors, Styles
print(f'{Colors.red}{Styles.bold}text')
```
For more details on how to use Style, see [Style](https://k1shk1n.github.io/outlify/latest/components/style/)
</details>
<details>
<summary>Decorators</summary>
You can also use **Outlify's** utility **Decorators**
```python
import time
from outlify.decorators import timer
@timer()
def dummy():
time.sleep(1)
dummy()
```
For more details on how to use Style, see [Decorators](https://k1shk1n.github.io/outlify/latest/components/decorators/)
</details>
## License
Licensed under the [MIT License, Copyright (c) 2025 Vladislav Kishkin](LICENSE)
Raw data
{
"_id": null,
"home_page": null,
"name": "outlify",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "Vladislav Kishkin <vladislav.kishkin01@gmail.com>",
"keywords": "cli, developer-tools, logs, outlify, output, utilities",
"author": null,
"author_email": "Vladislav Kishkin <vladislav.kishkin01@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/18/01/81f807f0497b98bca4ab9cd97c21235524ca2d54bbd4ff6850a5d2ae1fc3/outlify-0.8.0.tar.gz",
"platform": null,
"description": "<div align=\"center\">\n\n<img src=\"https://raw.githubusercontent.com/k1shk1n/outlify/main/assets/header.svg\" alt=\"outlify header\" width=\"600\">\n\nStructured cli output \u2014 beautifully, simply, and dependency-free.\n\n[Overview](#overview) \u2022\n[Install](#install) \u2022\n[Usage](#usage) \u2022\n[Components](#components) \u2022\n[License](#license)\n\n<img src=\"https://raw.githubusercontent.com/k1shk1n/outlify/main/assets/footer.svg\" alt=\"outlify footer\" width=\"600\">\n\n[](https://pypi.org/project/outlify/)\n\n\n\n[](https://github.com/astral-sh/ruff)\n[](https://github.com/astral-sh/uv)\n\n</div>\n\n## Overview\n**Outlify** is designed with a focus on streamlined log output, making it perfect for cli tools.\nIt emphasizes lightweight operation and minimal dependencies, ensuring smooth integration\ninto any project. The second key aspect of **Outlify** is its beautiful and user-friendly\nlog formatting, designed to enhance readability and provide a pleasant experience\nfor developers and their users.\n\n## Install\n**Outlify** is available as a Python package and can be easily installed via `pip` from [PyPI](https://pypi.org/project/outlify/).\n\nTo install, simply run the following command:\n\n```bash\npip install outlify\n```\nThis will automatically install the latest version of **Outlify**.\n\n## Usage\nYou can view demos of any available modules by running the following command:\n\n```bash\npython -m outlify.module_name\n```\n\nFor example, to view the demo for the **Panel** module:\n\n```bash\npython -m outlify.panel\n```\n\n## Components\n**Outlify** provides simple, elegant components for clean and structured CLI output \u2014 with zero dependencies. They help organize information clearly and improve log readability.\n\nEach component is easy to use and comes with built-in demos. See below for examples and usage.\n\n### Static\n\n<details>\n<summary>Panels</summary>\n\nTo highlight important text by displaying it within a panel, use `Panel`. Here's how:\n\n```python\nfrom outlify.panel import Panel\n\nprint(Panel('A very important text', title='Warning'))\n```\n\nTo display parameters in a structured format, use the `ParamsPanel`:\n\n```python\nfrom outlify.panel import ParamsPanel\n\nparameters = {'parameter1': 'value1', 'parameter2': 'value2'}\nprint(ParamsPanel(parameters, title='Startup Parameters'))\n```\n\nFor more details on how to use Panels, see [Panels](https://k1shk1n.github.io/outlify/latest/components/panel/)\n\n</details>\n\n<details>\n<summary>Lists</summary>\n\nIf you need a simple titled list in structured output, use `TitledList`:\n\n```python\nfrom outlify.list import TitledList\n\npackages = ['first', 'second', 'third']\nprint(TitledList(packages))\n```\n\nFor more details on how to use Lists, see [Lists](https://k1shk1n.github.io/outlify/latest/components/list/)\n\n</details>\n\n<details>\n<summary>Styles</summary>\n\nTo styling text and **Outlify** elements, use `Colors` and `Styles`:\n\n```python\nfrom outlify.style import Colors, Styles\n\nprint(f'{Colors.red}{Styles.bold}text')\n```\n\nFor more details on how to use Style, see [Style](https://k1shk1n.github.io/outlify/latest/components/style/)\n\n</details>\n<details>\n<summary>Decorators</summary>\n\nYou can also use **Outlify's** utility **Decorators**\n\n```python\nimport time\nfrom outlify.decorators import timer\n\n@timer()\ndef dummy():\n time.sleep(1)\n\ndummy()\n```\n\nFor more details on how to use Style, see [Decorators](https://k1shk1n.github.io/outlify/latest/components/decorators/)\n\n</details>\n\n## License\nLicensed under the [MIT License, Copyright (c) 2025 Vladislav Kishkin](LICENSE)",
"bugtrack_url": null,
"license": null,
"summary": "Structured cli output \u2014 beautifully, simply, and dependency-free",
"version": "0.8.0",
"project_urls": {
"Bug Tracker": "https://github.com/k1shk1n/outlify/issues",
"Documentation": "https://k1shk1n.github.io/outlify",
"Homepage": "https://k1shk1n.github.io/outlify",
"Source": "https://github.com/k1shk1n/outlify"
},
"split_keywords": [
"cli",
" developer-tools",
" logs",
" outlify",
" output",
" utilities"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "24c4578f78c7c6e2c396e7c4ff3d8830e187c32955200fea6957b61c914b1800",
"md5": "53dfcf0f722877e463f7d3b9c0d2fb82",
"sha256": "4ee9b69f668a9815facc38f0bf3c3188d1b5ebe4360ed16c8979188c5e7d00d2"
},
"downloads": -1,
"filename": "outlify-0.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "53dfcf0f722877e463f7d3b9c0d2fb82",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 14049,
"upload_time": "2025-11-03T20:24:49",
"upload_time_iso_8601": "2025-11-03T20:24:49.416693Z",
"url": "https://files.pythonhosted.org/packages/24/c4/578f78c7c6e2c396e7c4ff3d8830e187c32955200fea6957b61c914b1800/outlify-0.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "180181f807f0497b98bca4ab9cd97c21235524ca2d54bbd4ff6850a5d2ae1fc3",
"md5": "1a79fa1acb91316519495367fce4a0a3",
"sha256": "7fb94f5d0d68b15e0faa7379badedaef26aa9d682308d278f0542e02955762ec"
},
"downloads": -1,
"filename": "outlify-0.8.0.tar.gz",
"has_sig": false,
"md5_digest": "1a79fa1acb91316519495367fce4a0a3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 64359,
"upload_time": "2025-11-03T20:24:50",
"upload_time_iso_8601": "2025-11-03T20:24:50.529690Z",
"url": "https://files.pythonhosted.org/packages/18/01/81f807f0497b98bca4ab9cd97c21235524ca2d54bbd4ff6850a5d2ae1fc3/outlify-0.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-11-03 20:24:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "k1shk1n",
"github_project": "outlify",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "outlify"
}