Skip to main content

Add your description here

Project description

ToolBoxV2 🧰

PyPI Version

A flexible modular framework for utilitys, functions, and complete capability's – deployable live/local, on the web, or as a desktop/mobile app system agnosic.


🎯 Goal

The primary goal of ToolBoxV2 is to provide a flexible platform that enables developers, end-users, and small to medium-sized businesses to efficiently create, customize, and use digital products. It aims to:

  • Handel seamlessly Execute.
  • Integrates in to diverse functionalities.
  • Ensure system-independence.

The underlying system, built on a monolithic modular architecture, enabling intuitive interaction with the digital world. It connects various components and core utility functions accessible from anywhere. This platform promotes creative collaboration and eases access to digital resources.


🎯 Target Audiences & Use Cases

👩‍💻 For Developers

Utilize ToolBoxV2 as a framework to:

  • Create custom functions, widgets, or complete mini-applications.
  • Leverage existing modules (mods) or extend them with new components.
  • Build web, desktop, or mobile applications using a unified Python stack.
  • Customize the user interface via the web frontend (tbjs).

🙋 For End Users

Access and use a variety of pre-built applications and functions:

  • Directly in a web browser, or as a native desktop/mobile application (powered by Tauri).
  • No prior technical knowledge required.
  • Access flexible tools for tasks such as calendar management, note-taking, image diffusion, quote generation, etc.
  • Personalize the user interface to meet individual needs.

🏢 For Businesses / Operators

Deploy ToolBoxV2 as a customizable internal management system for:

  • Self-hosted and highly adaptable solutions.
  • Project, process, or employee management.
  • Integration of proprietary modules and functions.
  • Scalability suitable for small to medium-sized enterprises.
  • Modular, API-ready, and easily extensible.

🚀 Installation

Linux / macOS

curl -fsSL https://raw.githubusercontent.com/MarkinHaus/ToolBoxV2/refs/heads/master/installer.sh | bash

Windows

irm "https://raw.githubusercontent.com/MarkinHaus/ToolBoxV2/refs/heads/master/installer.ps1" | tee tbInstaller.ps1 | % { & ([scriptblock]::Create($_)) }

pip

pip install ToolBoxV2

The installer auto-detects your platform, selects a runtime (uvvenv → bootstrap), and guides you through feature selection. Supports four install modes: native (single binary), uv, docker, and source.

Full Installation Guide · Quickstart


💻 Advanced / Alternative Methods

1. Python Package (Direct Installation)

For users who prefer to manage their Python environments manually.

Using pip:

    # Ensure you have Python 3.11 and pip installed
    # Recommended: Create and activate a virtual environment first!
    # python -m venv .venv && source .venv/bin/activate

    pip install ToolBoxV2
    # To install with optional extras (e.g., isaa, dev):
    # pip install "ToolBoxV2[isaa,dev]"

Using uv (a fast Python package installer & resolver):

    uv pip install ToolBoxV2
    # To install with optional extras:
    # uv pip install "ToolBoxV2[isaa,dev]"

After installation with pip or uv, you may need to initialize ToolBoxV2 manually:

    tb -init main

Ensure the directory containing the tb script (e.g., ~/.local/bin for user installs, or your venv's bin directory) is in your system's PATH.

2. From Source (For Developers / Bleeding Edge)

If you want to contribute or use the very latest (potentially unstable) code:

    git clone https://github.com/MarkinHaus/ToolBoxV2.git
    cd ToolBoxV2

    # IMPORTANT: Set up and activate a Python virtual environment
    # Example using Python's built-in venv:
    # python3 -m venv .venv
    # source .venv/bin/activate
    #
    # Example using uv:
    # uv venv .venv --python 3.11 # or your desired Python version
    # source .venv/bin/activate

    # Install in editable mode:
    echo "Choose your preferred installation method:"

    echo "  Option A: Using pip"
    echo "    pip install -e \".[dev,isaa]\"  # Install with dev and isaa extras"
    echo "    # or just: pip install -e ."

    echo "  Option B: Using uv"
    echo "    uv pip install -e \".[dev,isaa]\" # Install with dev and isaa extras"
    echo "    # or just: uv pip install -e ."

    # Your existing script for Python environment setup (if it offers more specific dev setup):
    # If you have specific Python dev environment needs beyond a simple venv, you can use:
    # chmod +x install_python_env.sh
    # ./install_python_env.sh

    # Initialize Git hooks (for contributors)
    bash .github/hooks/setup_hooks.sh

    # Initialize ToolBoxV2
    tb -init main

📦 Installers via GitHub Releases (Recommended for GUI App)

Find platform-specific installers (e.g., .dmg, .exe, .deb, .AppImage, .apk) on our GitHub Releases Page. Look for releases tagged with "-App" (e.g., simple-vX.Y.Z-App).

  1. Go to the Latest App Release on GitHub. (Note: Manually filter/find the latest release with "App" in its name if the "latest" tag doesn't point to an App release).
  2. Download the appropriate installer for your operating system from the "Assets" section (e.g., simple-core_X.Y.Z_aarch64.dmg for macOS ARM, simple-core_X.Y.Z_x64-setup.exe for Windows).
  3. Run the installer and follow the on-screen instructions.

You can also use our Interactive Web Installer Page which attempts to auto-detect your OS and provide the correct download link from the latest GitHub App release.


🖥️ Worker System Deployment (Production)

ToolBoxV2 uses a Python-based worker infrastructure instead of a Rust server. For production deployments:

Start Worker System

# Start all workers (HTTP + WebSocket)
cd toolboxv2/utils/workers
python cli_worker_manager.py start

# Or use the tb command
tb workers start

Worker Components

  • HTTP Workers: Handle API requests via raw WSGI (~5000 req/s per worker)
  • WebSocket Workers: Handle real-time connections (~10,000 concurrent per instance)
  • ZeroMQ Event Broker: High-performance inter-worker communication

For full documentation, see toolboxv2/utils/workers/README.md.


🖥️ Full Stack Desktop/Web Application (Tauri + Web)

This setup includes the Python backend, worker system, and Tauri/Web frontend.

Prerequisites:

  • Python 3.10 or higher
  • Node.js (which includes npm)
  • Tauri CLI (installed via npm)

for execution details use package.json or run tb --help


🧪 CI/CD & Deployment

Automated processes are managed using GitHub Actions for:

  • 🔁 Build & Test: Validating Python components and worker system.
  • 🚀 Release: Publishing to PyPI, building Tauri applications, and potentially Docker images.

🐳 Docker

Build ToolBoxV2 Image

Build the main ToolBoxV2 Docker image for deployment:

# Build as toolboxv2:latest
tb docker-image

# Build with specific tag
tb docker-image --tag v1.0.0

# Build and push to Docker Hub
tb docker-image --tag v1.0.0 --push

# Force rebuild without cache
tb docker-image --no-cache

Run Container

# Run with default CLI interface
docker run -it --rm toolboxv2:latest

# Run with persistent data volume
docker run -it --rm -v tb_data:/data toolboxv2:latest

# Run with exposed ports (for web interfaces)
docker run -it --rm -p 8080:8080 -p 8501:8501 toolboxv2:latest

Container Images

Image Description Use Case
toolboxv2:latest Main ToolBoxV2 image Production deployments
toolboxv2:dev Development build Testing and development
Docksh SSH-accessible containers Remote CLI access with tmux persistence

🌱 Example Projects & Ideas

ToolBoxV2 can be used to build a wide range of applications, including:

  • 🔗 Link shortener
  • 🧠 Live notes with versioning
  • 🎨 Diffusion system for generating visual assets
  • 📅 Calendar and scheduling tools
  • 📝 Quote/Offer generation system
  • 🎮 Multiplayer TicTacToe
  • 🤖 Chat/Voice bots with P2P communication capabilities

📚 Learn More / Further Information


📄 License

This project is distributed under a custom license. Please refer to the LICENSE file in the repository for detailed terms and conditions.

© 2022–2025 Markin Hausmanns – All rights reserved.

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

toolboxv2-0.1.28.tar.gz (45.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

toolboxv2-0.1.28-py3-none-any.whl (44.9 MB view details)

Uploaded Python 3

File details

Details for the file toolboxv2-0.1.28.tar.gz.

File metadata

  • Download URL: toolboxv2-0.1.28.tar.gz
  • Upload date:
  • Size: 45.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for toolboxv2-0.1.28.tar.gz
Algorithm Hash digest
SHA256 2ac6683aac27620f15ad075fb282137e0ea5243bf4ab1ab702a648378d7b4631
MD5 1d34fb10c4f2f194e3603418e16d6895
BLAKE2b-256 5463918ff00ff755bfda74a2d497d89fd5a231a35d576a123d3083de259615d0

See more details on using hashes here.

File details

Details for the file toolboxv2-0.1.28-py3-none-any.whl.

File metadata

  • Download URL: toolboxv2-0.1.28-py3-none-any.whl
  • Upload date:
  • Size: 44.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for toolboxv2-0.1.28-py3-none-any.whl
Algorithm Hash digest
SHA256 85e8c5fd6fc762cc1621e1c16b5371f5432a7227e11044c43b305c5bd8a3ba3d
MD5 d2c09c7c76021e84ad3464bd5161b2ff
BLAKE2b-256 8ee2046f9b1cfbfd1059b221469fa9881df572a5e6ce0a7b31b3347b03d0233f

See more details on using hashes here.

Supported by

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