Skip to main content

Added utils

Project description

ivbox

PyPI version Python License

ivbox is a Python utility framework focused on improving developer productivity through better project structure and reusable utility functions, built from real-world usage and repetition.

It is designed to grow organically, introducing abstractions only when patterns prove useful.

Current version: 0.2.0


Why ivbox?

When you build real projects, you quickly notice the same pain points repeating:

  • You rewrite the same helpers again and again
  • UI code grows fast and becomes hard to maintain
  • Small architectural decisions become expensive later
  • You want structure without over-engineering

ivbox exists to reduce that friction with a simple rule:

Abstractions are created only when something is repeated.


Features

  • Improved internal project structure (0.2.0 refactor)
  • Reusable general-purpose utilities
  • UI helper utilities for Flet-based applications
  • Modular design: add what you need, keep it clean
  • Built from real usage, not theoretical patterns

Project Status

ivbox is under active development.

  • The API may evolve until version 1.0.0
  • Changes are driven by real usage, not assumptions
  • Stability increases progressively with each release

Installation

pip install ivbox

Quick Start

General utilities

from ivbox.utils import general

# Example usage (adapt to your real functions)
# general.slugify("Hello World") -> "hello-world"
# general.now_str() -> "2025-12-29 20:15:00"

Flet utilities

from ivbox.utils import flet as ivf
import flet as ft

def main(page: ft.Page):
    # Example usage (adapt to your real helpers)
    # page.add(ivf.section_title("Dashboard"))
    pass

ft.app(target=main)

Utilities

General-purpose utilities

These helpers are framework-agnostic and intended to reduce repetitive code across projects:

  • strings and formatting helpers

  • date/time helpers

  • validation helpers

  • file/path helpers

  • misc productivity utilities

Flet UI utilities

Helpers focused on reducing repetition in Flet apps:

  • reusable layout patterns

  • UI composition helpers

  • common components wrappers (only when repeated)

  • navigation and page composition helpers (if applicable)

ivbox does not replace Flet — it helps you work with it more efficiently.

Versioning

ivbox follows semantic versioning with the usual meaning:

  • 0.x → active development, API may change

  • 1.0.0 → stable and committed API

Contributing

Contributions are welcome if they:

  • solve a real, repeated problem

  • keep the project simple and understandable

  • respect the philosophy of “repeat first, abstract later”

Suggested flow:

      1. Open an issue describing the repeated pain point

      2. Propose a minimal helper/abstraction

      3. Add a small example + tests if applicable

Author

Ivan Gonzalez Valles

GitHub: https://github.com/ivanarganda

Inspiration

ivbox is inspired by developer pain points and by frameworks that grew through real usage, like Laravel. Build what hurts. Keep what repeats

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

ivbox-0.3.0.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

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

ivbox-0.3.0-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file ivbox-0.3.0.tar.gz.

File metadata

  • Download URL: ivbox-0.3.0.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for ivbox-0.3.0.tar.gz
Algorithm Hash digest
SHA256 15bfbbddca049b2cd15713dae31d1f9c997fd1cf08e7721156eefab903532cfc
MD5 93f5798f20af29b71715b7ec74ba9e08
BLAKE2b-256 6ed6d0d310d02a71e0b2c68f2183f6c3703ea4f2e6e99281b97a2ae3c805ac32

See more details on using hashes here.

File details

Details for the file ivbox-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: ivbox-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for ivbox-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 368756bebab8c25fc59f2584e242f26256de3c8ea8edf9cc64e638679924b08c
MD5 9bf4530db54ad83ed174019c2b33549c
BLAKE2b-256 cc309aa7d986c95ae64837a66767f311f09a00871e4e03afcc9990e58ba36331

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