No project description provided
Project description
Botflow
Botflow is a lightweight Python framework for building automation workflows and bots with a focus on simplicity, modularity, and ease of integration.
Features
- Workflow Management: Define complex bot workflows with simple, declarative syntax
- Multi-language Support: Built-in i18n support with locale management
- Resource Management: Centralized handling of themes, assets, and locales
- Bundle Support: PyInstaller integration for creating standalone executables
- Qt Integration: PySide6 support for GUI-based automation
- Configuration: Flexible runtime configuration with environment variables
Quick Start
-
Install Botflow via pip:
pip install botflow
-
Create a simple bot workflow:
from botflow import run_application, run_flow_manager, FlowManager, TextStepSpec, FlowSpec RESOURCES_DIR = 'resources' async def greet_user(ctx): name = ctx.data.get('greet_step') ctx.logger.info(f'Hello, {name}!') flow = FlowSpec( name='simple_flow', steps=[ TextStepSpec( key='greet_step', title='Greet User', placeholder='Enter your name', ), ], on_finish=[greet_user] ) if __name__ == '__main__': run_application() flow_manager = FlowManager(flow) run_flow_manager(flow_manager, window_title='Simple Flow Manager')
-
Run your bot:
python your_bot_script.py
How to create a bundle
To create a standalone executable bundle of your Botflow application, you can use PyInstaller. Follow these steps:
-
Install PyInstaller:
pip install pyinstaller
-
Create a spec file for your application. You can generate a default spec file using:
pyinstaller your_bot_script.py -
If you are using your own resources (like themes, locales, etc.), make sure to include them in the spec file. You can modify the
datassection of the spec file to include your resources directory:pyinstaller your_bot_script.py --add-data "path/to/your/resources:resources"
-
If you want to specify a custom resources directory for your bundle, you can set the
BUNDLE_RESOURCES_DIRvariable in your main script:BUNDLE_RESOURCES_DIR = 'path/to/your/bundle/resources'
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file botflow_gui-0.0.1.tar.gz.
File metadata
- Download URL: botflow_gui-0.0.1.tar.gz
- Upload date:
- Size: 65.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
278de063ee3fb46d9de49c5d046351a7c02c7a6bf385476cdfad1400262c8d0b
|
|
| MD5 |
9a86bd0c0d827b44ff46215a988cc8f7
|
|
| BLAKE2b-256 |
b8db64866ba1bc51538ba91f9f6146daaa78ff126aea39d63ab2566748853712
|
File details
Details for the file botflow_gui-0.0.1-py3-none-any.whl.
File metadata
- Download URL: botflow_gui-0.0.1-py3-none-any.whl
- Upload date:
- Size: 78.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
befcb7801ac1c4057111429afc4183a7ff154be6edfa4487ef61a4e344850766
|
|
| MD5 |
14bb09e7c8bc2ba1c8f0f62c7cca8b4b
|
|
| BLAKE2b-256 |
365c0d4a62ddc6b7fd5bfc7a15f4e082339e6b0a73827ef59eafaa1a87d156a4
|