Skip to main content

Add your description here

Project description

ToolBoxV2 🧰

PyPI Version Donate

A flexible modular framework for tools, functions, and complete applications – deployable locally, on the web, or as a desktop/mobile app.


🔍 Overview

ToolBoxV2 combines a Python backend library with a Rust web/desktop server (Actix) and a cross-platform UI framework (Tauri + tbjs). This architecture enables the creation of versatile applications accessible through various interfaces.

ToolBoxV2 Architecture


🎯 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 applications. It aims to:

  • Execute applications seamlessly.
  • Integrate diverse functionalities.
  • Ensure system-independence.

The underlying system, built on a monolithic modular architecture, combines the advantages of both approaches, enabling intuitive interaction with the digital world. It connects various components and provides 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 code stack (Python, Rust, Web Technologies).
  • 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

We offer several ways to install ToolBoxV2, choose the one that best suits your needs!

🥇 Recommended: Zero the Hero Universal Installer (Easiest)

This is the recommended method for most users on Linux, macOS, and Windows (via WSL or Git Bash). The "Zero the Hero" script intelligently handles Python installation (if needed), sets up a dedicated virtual environment, installs ToolBoxV2 Core, and makes the tb command available.

  1. Download the installer:

    # Using curl
    curl -sSL -o install_toolbox.sh https://raw.githubusercontent.com/MarkinHaus/ToolBoxV2/refs/heads/master/installer.sh
    # Or using wget
    wget -qO install_toolbox.sh https://raw.githubusercontent.com/MarkinHaus/ToolBoxV2/refs/heads/master/installer.sh
    
  2. Make it executable:

    chmod +x install_toolbox.sh
    
  3. Run the installer:

    ./install_toolbox.sh
    
  4. Follow on-screen instructions. The script will:

    • ✅ Check for and offer to install required Python version (default: 3.11).
    • ✅ Create an isolated environment for ToolBoxV2 (usually in ~/.local/share/ToolBoxV2 or ~/Applications/ToolBoxV2).
    • ✅ Install ToolBoxV2 Core using pip by default.
    • ✅ Expose the tb command (usually via a symlink in ~/.local/bin/).
    • 🎉 Run tb -init main to finalize setup.

    Customization: The script accepts optional arguments (e.g., --version=0.5.0, --source=git, --manager=uv, --isaa, --dev). If no arguments are given, it looks for an init.config file in the same directory. For details, run:

    ./install_toolbox.sh --help
    

💻 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.


3. Server-Only Deployment (Rust Actix Server)

If you wish to deploy only the Rust Actix backend server:

  1. Clone the repository:
    git clone https://github.com/MarkinHaus/ToolBoxV2.git
    cd ToolBoxV2
    
  2. Install Rust: If you haven't already, install Rust and Cargo from rust-lang.org.
  3. Build the server:
    cd toolboxv2/src-core
    cargo build --release
    
  4. or auto build and run using
  5.  tb api start
    

for details run

    tb api -h

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

This setup includes the Python backend, Rust server, and Tauri/Web frontend.

Prerequisites:

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


🧪 CI/CD & Deployment

Automated processes are managed using GitHub Actions for:

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

🌱 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.25.tar.gz (2.8 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.25-py2.py3-none-any.whl (2.9 MB view details)

Uploaded Python 2Python 3

File details

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

File metadata

  • Download URL: toolboxv2-0.1.25.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for toolboxv2-0.1.25.tar.gz
Algorithm Hash digest
SHA256 fa1106bdc6e6376d76682063dad70ac99cbd8553011a9439f9306fecfb88c381
MD5 8eb78ffaeff044cd762159a7a533e95b
BLAKE2b-256 df9dbc02c8e0dc8d25e2b9fcd67cfb26a9dd172fa0142bebcb0fa0e7fe65b92c

See more details on using hashes here.

Provenance

The following attestation bundles were made for toolboxv2-0.1.25.tar.gz:

Publisher: release.yml on MarkinHaus/ToolBoxV2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file toolboxv2-0.1.25-py2.py3-none-any.whl.

File metadata

  • Download URL: toolboxv2-0.1.25-py2.py3-none-any.whl
  • Upload date:
  • Size: 2.9 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for toolboxv2-0.1.25-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d2f19468ee43d2708f2e7c76fbb1c6c49e1854278257ffd5f78c5a1a69ded061
MD5 70388588b09f02463e8c1231f257f7bf
BLAKE2b-256 a8f2eacb4682c6af357a4dd6e39ce1ac5544492099f929c79dbef679acc41cc5

See more details on using hashes here.

Provenance

The following attestation bundles were made for toolboxv2-0.1.25-py2.py3-none-any.whl:

Publisher: release.yml on MarkinHaus/ToolBoxV2

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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