Skip to main content

UiWiz is a framework to develop web applications

Project description

UiWizard

UiWizard is a python-based ui-framework for the web. It was inspired by the great framework NiceGui. Why create this project that is very similar to NiceGui?

  • The first reason was that NiceGui requires websockets to work and when experimenting with the framework it caused some issues on my hosting platform.
  • Learning. I wanted to figure out how to do something simillar but without using websockets
    • I wanted to try out HTMX
  • Limited control over the underlaying tech stack but mainly just learning

Example and docs UI-Wizard

Features

  • Tailwind and DaisyUI for the graphics and responsive layout
  • Webbased
  • Quite a lot of standard elements, input fields, dropdown, foot, header, tabs...
  • HTMX for interactivity
  • Hopefully great defaults!

Usage

Install the library

pip install uiwiz

Create a main.py file

import uvicorn

from uiwiz import ui, UiwizApp

app = UiwizApp()


@app.page("/")
async def home_page():
    ui.label("Hello world")


if __name__ == "__main__":
    uvicorn.run(app)

Run it

python main.py

General info

HTMX works with input fields in HTML and forms. To make it a bit easier to work with the form submit event does not send the data in the normal form format but uses the HTMX extension to convert it to json. This means that endpoints using UiWizard can use pydantic models as the input and have the benefit of validation.

Tests

poetry run coverage run -m pytest .
poetry run coverage html

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uiwiz-0.2.5.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

uiwiz-0.2.5-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file uiwiz-0.2.5.tar.gz.

File metadata

  • Download URL: uiwiz-0.2.5.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.1

File hashes

Hashes for uiwiz-0.2.5.tar.gz
Algorithm Hash digest
SHA256 1f86e026e375fb6a5b9555349cdfd1d5405c508977c2e6d635f7e9d4685131e0
MD5 9e746bdc62cba3bede6706211a912a20
BLAKE2b-256 99b842f7e71114bf6cca30cc8474f8323b94a81c040ecd9d0da6b0191bf719f1

See more details on using hashes here.

File details

Details for the file uiwiz-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: uiwiz-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.1

File hashes

Hashes for uiwiz-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f7c262d66026cf131eb0010072ebbd848d78f336b9941cbae7d417e243a544b6
MD5 8d3e03b3df5969d1cec2534d99f13229
BLAKE2b-256 ff8e17d280554f7e965f3863025f3a14e943525520bd48bacc92e88640ce746b

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