Skip to main content
BESSER

Draw a model. Get a working app.

BESSER is an open-source, model-driven low-code platform in Python.
Design your app as a UML model — in the browser or in Python — and generate the code:
FastAPI backends, React frontends, Django, Spring Boot, Flutter, databases, agents and more.

Try it in your browser · Docs · Examples · Built with BESSER

PyPI version PyPI - Downloads Python License: MIT GitHub Repo stars

BESSER is a low-modeling low-code open-source platform. BESSER (Building bEtter Smart Software fastER) is funded thanks to an FNR Pearl grant led by the Luxembourg Institute of Science and Technology with the participation of the SnT/University of Luxembourg and open to all your contributions!

Draw a model in the BESSER editor, generate a web app, and run it

Quickstart

No install: open the BESSER Web Modeling Editor, draw a class diagram (or describe your app and let the AI assistant draw it), and click Generate.

In Python:

pip install besser
from besser.BUML.metamodel.structural import DomainModel, Class, Property, StringType, IntegerType
from besser.generators.backend import BackendGenerator

book = Class(name="Book", attributes={Property(name="title", type=StringType),
                                      Property(name="pages", type=IntegerType)})
model = DomainModel(name="Library", types={book})

BackendGenerator(model, output_dir="library_api").generate()   # FastAPI + SQLAlchemy + Pydantic
python library_api/main_api.py      # then open http://localhost:8000/docs

That's a working REST API with a database, CRUD endpoints and validation, generated from five lines of model.

With your AI coding agent (Claude Code, Cursor, Copilot, Cline, …): install the BESSER Skills and just ask, e.g. "model a library with books and authors in BESSER and generate a FastAPI backend". The agent builds a correct B-UML model and runs the right generator for you.

npx skills add BESSER-PEARL/besser-skills --all

What you can generate

You want… BESSER generates
A full-stack web app React frontend + FastAPI backend + database (WebAppGenerator)
A backend / REST API FastAPI, SQLAlchemy, Pydantic · Spring Boot · Django · Supabase
A database SQL DDL (PostgreSQL, MySQL, SQLite, …) · SQLAlchemy models
A mobile app Flutter
Plain code & schemas Python classes · Java classes · JSON Schema · RDF
Agents & chatbots BESSER Agentic Framework agents from agent diagrams
ML & quantum PyTorch · TensorFlow · Qiskit
Deployment Docker Compose · Terraform

See the full list of generators.

Why model first?

  • Deterministic. The same model always produces the same code. No prompt roulette for the parts that should be boring.
  • AI where templates stop. The experimental Spec-Driven Agent starts from the generated scaffold, lets an LLM add what the templates don't cover (auth, Docker, tests, other stacks), then validates the result. Where a free tier is configured, it runs without an API key.
  • The model stays the source of truth. Change the model, regenerate, keep going. Class, object, state machine, agent, GUI, BPMN, neural network and quantum models all live in one project.

Use BESSER from your AI coding agent

BESSER Skills and UML Drawing package BESSER as Agent Skills for Claude Code, Cursor, Copilot, Cline and others:

npx skills add BESSER-PEARL/besser-skills --all
npx skills add BESSER-PEARL/uml-drawing --all

Contributing

Contributions are welcome: new generators, metamodels, bug fixes and docs. Start with CONTRIBUTING.md (local setup, tests) and the Contributor Guide. Look for good first issue to get started.

If BESSER is useful to you, a ⭐ helps others find it.

About

BESSER is built on B-UML, our Python-based interpretation of a "Universal Modeling Language", heavily inspired by UML.

Metadata

Release files for besser 8.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for besser 8.6.1
File Size Uploaded Provenance Actions
besser-8.6.1.tar.gz 2.1 MB Without provenance Details for besser-8.6.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for besser 8.6.1
File Interpreter ABI Platform Actions
besser-8.6.1-py3-none-any.whl Python 3 none any Details for besser-8.6.1-py3-none-any.whl

Total release size: 4.4 MB

Release files / besser-8.6.1.tar.gz

Download URL besser-8.6.1.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
6f7aa64b8f42c1ca0fcfac277b56c45aa7ab0bd3db211399a3a163ee7407192c
BLAKE2b-256 checksum
How to use checksums
bde981da2a56c9771fd22276aca00af1344e10378fa8dded521bc0094827663a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / besser-8.6.1-py3-none-any.whl

Download URL besser-8.6.1-py3-none-any.whl
Size 2.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4cb4c361a7c308df6f414b4890d14cc230ac41184e31e5a4d674faa97a2625ce
BLAKE2b-256 checksum
How to use checksums
07226f6f4c768bed0ca8457ad12286c716ebf57b5bbb7b5da38e3ad777490c66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Security for besser 8.6.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

8.6.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page