2 ms·
I've created APIs in multiple languages and the patterns are typically the same: * Define your DB schema - OK, no way to avoid this * Repeat yourself with ser
by nprateem 3y ago
I've created APIs in multiple languages and the patterns are typically the same:
* Define your DB schema - OK, no way to avoid this
* Repeat yourself with ser/deser schemas - tedious
* Repeat yourself with basic CRUD endpoints - further tedium
* Eventually lose the will to live
It's so frustrating when there's so much plumbing involved before you even get to the business logic.
I've previously used Django but had discounted it for MVPs due to its relatively sluggish performance and lack of typing, but benchmarks from pypy and typing have made me change my mind. Spring Boot is also a front-runner, but the lack of admin interface and user auth system (I don't want to run Keycloak but would integrate Firebase auth) have tipped me to Django.
When I used DRF previously it followed the above pattern and was slow and tedious to develop. Django ninja looks great (auto generating ser/deser schemas from models, lightweight annotations). Removing the boilerplate to serve a CRUD API also looks super helpful, so thanks, I'll give it a try.