Live data from Hacker News

Ask HN: Easiest way to build a CRUD app?

news.ycombinator.com

171–180 of 239 posts

Re: Ask HN: Easiest way to build a CRUD app?

#171

Your requirements are contradictory and incomplete: - No single language can do all of that successfully, unless you ditch GUI and client-server models - Without external dependencies you will either be reinventing the wheel or adding lots of layers - All software will require maintenance, more layers equal more maintenance - All software can be compromised or hacked, more layers equal more attack surface - If it has…

> If it is a single-user, single-machine "app", you could use a plain UTF-8 text file which can be read and written to by any relevant text editor. No app is the best app in this case. This does depend in what kind of information you intend to CRUD. I would similarly say a Rails app that uses a filesystem DB for records, sessions, logging, etc despite never having touched Ruby more than 3 times in the last 2 decades.…

As I described: the requirements do not list enough. I use the word 'layers' as a loose term to describe anything from APIs between code written in different languages that needs to interact, modules within languages, frameworks, libraries, package managers and other 'things' that end up in your development lifecycle that can all introduce vulnerabilities, incompatibilities and other maintenance tasks.

If you want less maintenance, you have to reduce your dependencies, and to do that you might need to (partially) re-implement some of the features in your dependencies to be able to discard them, thus re-inventing the wheel.

Most of your other replies are not really up to you, and can only be answered by mouzogu.

Re: Ask HN: Easiest way to build a CRUD app?

#176
post #79

I would answer at the meta-level - pick the framework in the language you know best. If you are already fluent in Python, use Django. PHP; Laravel? Etc. The benefit of using the “best” CRUD tool (if there even is one) is far less than the cost of learning a new language these days. When Rails first came out, it was so much better than anything else that it was worth it to learn Ruby just to use that toolchain. Nowada…

Except for Node.js, unfortunately there's still no good way of building a simple CRUD app like with Django/RoR. Available solutions are still very much do-it-yourself or very niche-buggy. This has some advantages! But it's really bad if you just want a CRUD app.

Re: Ask HN: Easiest way to build a CRUD app?

#177

Not sure if this qualifies but hasura[1] sounds like it would work well. It’s not REST and you could consider it to be a dependency but you wouldn’t have to write any code and you could deploy it using a docker container. [1] https://hasura.io/

Seconded for Hasura - really great tool that's make it easy to setup an API on your database. Also makes it easy to manage your data models and permissions. You can use it to build REST API endpoints as well as GraphQL ones.

Re: Ask HN: Easiest way to build a CRUD app?

#178
post #79

I would answer at the meta-level - pick the framework in the language you know best. If you are already fluent in Python, use Django. PHP; Laravel? Etc. The benefit of using the “best” CRUD tool (if there even is one) is far less than the cost of learning a new language these days. When Rails first came out, it was so much better than anything else that it was worth it to learn Ruby just to use that toolchain. Nowada…

Except for Node.js, unfortunately there's still no good way of building a simple CRUD app like with Django/RoR. Available solutions are still very much do-it-yourself or very niche-buggy. This has some advantages! But it's really bad if you just want a CRUD app.

Have you heard of AdonisJS[1]? A couple of years ago we had JS as a hard requirement for a new project, and coming from a Rails background, Adoins was really good.

1: https://adonisjs.com/

Re: Ask HN: Easiest way to build a CRUD app?

#180
post #82
post #68

I used to use Django for this kind of thing, but I have found that Flask connected to your fully managed database of choice like AWS with dynamodb (nosql db gets rid of even worrying about schemas) is the simplest way to quickly get up and running and do almost everything in Python with very little learning of various settings and details of specific frameworks since it is so minimal. This is how I tend to prototype…

My journey: Django -> Flask -> FastAPI

I second FastAPI. It's the fastest way to get a modern webapp or api up and running in Python with full support for async and it works nicely with ORMs like SQLAlchemy.
Post reply on HN