Skip to main content

Lofi GUI tooling

Project description

lofigui

This is tooling for me as a go and python programmer to provide really simple front ends. They serve the same area as:

It provides a way to build a very simple web app that can be bundled if required. The use cases are:

  • quick and simple
  • more than a static website

The use cases are:

  • providing a gui for a command line tool
  • 1-10 users
  • more for front ends for single physical object or a single process

I have used Bulma as a CSS framework to make it look prettier as I am terrible at design.

Elements

  • model view controller architecture
  • templating
  • style sheets
  • buffering

Your project is essentially a web site. To make design simple you completely refresh pages so no code for partial refreshes. To make things dynamic it has to be asynchonous so for python using fastapi as a server and Uvicorn to provide the https server.

Like a normal terminal program you essentially just print things to a screen but now have the ability to print enriched objects.

model view controller architecture

All I really want to do is to write the model. The controller and view (in the browser and templating system) are a necessary evil. The controller includes the routing and webserver. The view is the html templating and the browser.

Buffer

In order to be able to decouple the display from the output and to be able to refesh you need to be able to buffer the output. It is more efficient to buffer the output in the browser but more complicated. Moving the buffer to the server simplifies the software but requires you to refresh the whole page.

Alternative approaches

The difference is that this approach should be very simple and easily understandable. For the moment no Javascript is used.

Roadmap

  • A go version, will be event simpler
  • A go wasm version for deploying serverless (no physical object)

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

lofigui-0.2.3.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

lofigui-0.2.3-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file lofigui-0.2.3.tar.gz.

File metadata

  • Download URL: lofigui-0.2.3.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.6 Linux/5.15.90.1-microsoft-standard-WSL2

File hashes

Hashes for lofigui-0.2.3.tar.gz
Algorithm Hash digest
SHA256 17c518252fb2bdfdd2e7a21d7bd0743ab5a30e609987a54dfd7e3bbcbd6d494a
MD5 562891792e33a2290ea66297c5b0a96a
BLAKE2b-256 dbe009efc0cc31db616f7e9658586fa172937529c2046de83bb86c1c8fa27222

See more details on using hashes here.

File details

Details for the file lofigui-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: lofigui-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 3.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.6 Linux/5.15.90.1-microsoft-standard-WSL2

File hashes

Hashes for lofigui-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 8df27c19941532f74fe7fa7c64cceebdb4bc74be95dea54ff942ad3d0ef0b255
MD5 357d4ac7e7941b713e2096fe77f0e29c
BLAKE2b-256 9c36f28ed6309b159521691ffa32e105fe57f698a17106ad3a8b97b7bc54b543

See more details on using hashes here.

Supported by

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