Open-source beta · 0.1.0-beta.1

Desktop applications
defined with JSON.

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

student-form.json
{
  "form": Student,
  "table": tblStudent,
  "layout": responsive,
  "fields": [
    { "name": FullName,
      "type": text,
      "required": true }
  ]
}
JSON definition native form
Open sourceLGPL-3.0-or-later
Native desktopBuilt with wxPython
Database readyMariaDB and MySQL
Your dataLocal, direct, controlled

A practical application framework

Define the data. JSForm handles the routine.

Build consistent database applications without rebuilding the same editing, navigation, validation, and reporting machinery for every screen.

01

JSON-defined forms

Describe fields, relationships, layouts, controls, and behavior in readable files that remain easy to review and customize.

02

Database records

Navigate, create, update, and validate MariaDB or MySQL records through a consistent native interface.

03

Visual screen designer

Arrange and customize screens visually while preserving recoverable starter definitions.

04

Native reporting

Design reusable layouts and generate PDF reports without a separate reporting runtime.

05

Reusable behavior

Shared handling for dates, times, numbers, choices, phone formatting, dirty-state checks, and linked forms.

06

Application hooks

Add authentication, permissions, auditing, diagnostics, and application-specific workflows without forking the framework.

How it fits together

Structured definitions, native results.

DefineJSONForms and reports
BuildJSFormFramework behavior
UseNative UIwxPython desktop
ConnectData + PDFDatabase and output

Included demonstration

Learn through a complete, small application.

The School Bus Routes sample demonstrates forms, choices, parent-child records, ordered route stops, visual screen customization, and a designed PDF route manifest.

  • Schools, drivers, buses, students, routes, and stops
  • Independent sample database and account
  • Screen and report designer examples
  • Intentionally simple enough to study
JSForm Routes screen showing an ordered list of school bus stops and a data-entry form
Database formsRelated records, choices, time fields, ordered lists, and navigation.

One framework, complete workflow

From application menu to finished report.

JSForm School Bus Routes sample main menu
Application shellA clean starting point assembled around the application's work.
JSForm visual Report Designer displaying a Route Manifest layout
Visual report designArrange report controls, sections, data fields, and presentation properties.
Finished Pine Valley School Bus Route Manifest PDF
Finished PDF outputA reusable report definition rendered as a polished, portable document.

Current release

JSForm 0.1.0-beta.1

The framework has entered public beta. Source and installation artifacts will be linked here when the public repository is published.

Beta release Download link pending

The website is ready before publication so the final repository and verified package links can be added deliberately.

Release forthcoming

Project resources

Build in the open.

Source codePublic repository link pending
DocumentationFramework guide link pending
SupportHow to report a problem SecurityResponsible reporting policy