JSON-defined forms
Describe fields, relationships, layouts, controls, and behavior in readable files that remain easy to review and customize.
Open-source beta · 0.1.0-beta.1
JSForm turns structured form definitions into native Python desktop applications—with database records, validation, navigation, visual design tools, and PDF reporting built in.
Python 3.10+ · wxPython · MariaDB or MySQL · Windows-focused
{
"form": Student
,
"table": tblStudent
,
"layout": responsive
,
"fields": [
{ "name": FullName
,
"type": text
,
"required": true }
]
}
A practical application framework
Build consistent database applications without rebuilding the same editing, navigation, validation, and reporting machinery for every screen.
Describe fields, relationships, layouts, controls, and behavior in readable files that remain easy to review and customize.
Navigate, create, update, and validate MariaDB or MySQL records through a consistent native interface.
Arrange and customize screens visually while preserving recoverable starter definitions.
Design reusable layouts and generate PDF reports without a separate reporting runtime.
Shared handling for dates, times, numbers, choices, phone formatting, dirty-state checks, and linked forms.
Add authentication, permissions, auditing, diagnostics, and application-specific workflows without forking the framework.
How it fits together
Included demonstration
The School Bus Routes sample demonstrates forms, choices, parent-child records, ordered route stops, visual screen customization, and a designed PDF route manifest.
One framework, complete workflow



Current release
The framework has entered public beta. Source and installation artifacts will be linked here when the public repository is published.
The website is ready before publication so the final repository and verified package links can be added deliberately.
Project resources