Framework for applications

Over the past months I have been building a framework that is backed by streamlit widgets. It was built to quickly create a proof of concept for ideas, or full blown applications in a fraction of the time usually required. What makes this stand apart is firstly it is not a single component that performs a single task, it is many components that function together, secondly you design the UI in a simple yaml file and the UI takes care of itself, leaving the developer to concentrate on the interesting bits.

So what can it do, well most anything, build a micro-frontend rapidly, define callbacks in a standardized manner, tables both editable and immutable, dialogs to add and edit information to an immutable table. Build out an standalone application with easy storage of the information entered. Not all of the streamlit widgets have been implemented but enough.

I have been caught by many of the issues raised by others and managed to find solutions, while not perfect it is fairly solid. Multi Page, Multi Tab, Multi Table, Multi most things.

I am looking at the possibility of getting the organization I work for to open source this framework and would like to see if there is any interest in something like this.

Below is a very simple example of the yaml ui.

---
code: SampleMain
name: Sample Main
description: Sample Application Main
buttons:
  - code: save
    label: Save
    on_click: sections.sample_main:save
  - code: cancel
    label: Cancel

inputs:

  - type: text_input
    code: ProductCode
    label: Code
    immutable: false
    required: true
    cache: true

  - type: text_input
    code: Name
    label: Name
    immutable: false
    required: true