Model
A minimal Python ORM for MySQL, MariaDB and SQLite that favors writing explicit SQL-like queries with full static type checking over the query-building magic of larger ORMs.
🔗 Visit ModelDescription
Popular Python ORMs like SQLAlchemy or Django's ORM save you from writing SQL by hand, but that convenience comes with a learning curve and behavior that can feel like a black box — it's not always obvious what query is actually being sent to your database. Model takes the opposite approach: it stays close to SQL, so what you write is close to what runs, while still giving you Python objects and type-checked queries instead of raw strings.
It supports MySQL, MariaDB and SQLite, includes 73 static-typing overloads so IDEs can autocomplete and type-check queries against your schema, and ships a CLI (schema.py) that can generate and update your schema definitions automatically from an existing database. It's MIT-licensed and, at 5 stars and 5 commits, very early-stage — a small, focused library rather than a general-purpose framework.
💬 Our review
The short version: Model is for developers who find SQLAlchemy or Django's ORM too abstracted and want something closer to writing SQL directly, with type safety layered on top instead of a full query-builder in the way.
Against SQLAlchemy, Peewee or Django ORM — all mature, widely deployed, and battle-tested at scale — Model's honest selling point is simplicity and explicitness, not features: no relationship management, no complex migrations, just insert/load/query/update/delete against MySQL/MariaDB/SQLite with strong typing. That's a legitimate niche (plenty of developers do find bigger ORMs' magic frustrating to debug), but at 5 commits and 5 stars, it hasn't been tested outside its own author's use, and there's no ecosystem of plugins or community troubleshooting to fall back on if you hit an edge case. It's free either way, so the real cost is the risk of depending on a single-maintainer, pre-1.0 project. Worth a try for a small personal project or internal tool where you value explicit SQL over ORM abstraction; for anything with real production stakes or complex relational data, SQLAlchemy or Django ORM remain the safer default.
💰 Pricing
📊 Global score
🤖 AI-enriched data
Gratuit, licence MIT
Pros
Design explicite proche du SQL, moins de comportement caché qu'un gros ORM
73 surcharges de typage statique pour l'autocomplétion et la vérification par l'IDE
CLI de synchronisation de schéma en une commande
Cons
Très jeune (5 étoiles, 5 commits), aucune adoption communautaire
Pas de gestion de relations ni de migrations complexes
Limité à MySQL/MariaDB/SQLite, mainteneur unique
