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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17c518252fb2bdfdd2e7a21d7bd0743ab5a30e609987a54dfd7e3bbcbd6d494a |
|
MD5 | 562891792e33a2290ea66297c5b0a96a |
|
BLAKE2b-256 | dbe009efc0cc31db616f7e9658586fa172937529c2046de83bb86c1c8fa27222 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8df27c19941532f74fe7fa7c64cceebdb4bc74be95dea54ff942ad3d0ef0b255 |
|
MD5 | 357d4ac7e7941b713e2096fe77f0e29c |
|
BLAKE2b-256 | 9c36f28ed6309b159521691ffa32e105fe57f698a17106ad3a8b97b7bc54b543 |