Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Is there any open source tool for creating simple CRUD Apps?
110 points by aswinmohanme 3 days ago | hide | past | web | favorite | 50 comments
Is there any tools that can make making CRUD apps easier ?

It should allow creating forms for data input and updates and it should be preferably open-source.

I am thinking more like metabase for creating dashboards, does any such tool exists ?

I am using Rails currently

Checkout Daptin https://github.com/daptin/daptin

I have build a lot of crud apps with daptin as the backend. I have been building daptin since about 2 years now.

Daptin will be able to give you much more than just CRUD. Things like authentication/authorization/user management. Maybe you would want OTP based login in future, maybe not. There are a lot of features like that.

It's written in golang so you can get a single independent binary which can run anywhere. There is a docker image as well if you prefer that.

If you are familiar with Rails, I would strongly recommend investigating Django.

Here's why:

- Django admin gives you all the CRUD you need

- ORM to design your models, simple or complex

- Baked in user auth system

- Secure defaults

- Host of pre-built plugins (Django apps)

- Python 3 is a solid language you will love

- Ability to extend in the future if the need arises

Hi, yes, this is what Retool is for! (https://retool.com)

It's like Metabase, but instead of for buliding dashboards, it's for building CRUD apps. LMK if you have any feedback? We've been working on it for a bit now.


This seems like a cool product, something that we could use.

However our main ERP system doesn't have an API, so I've been building a custom scraper that feeds into a Django app, which allows custom tooling around our data.

This would have been perfect if it allowed for building scrapers to feed the custom db.

As much as I like retool, it's not open source.

"open source tool"

Ok it’s not open source, but retool is awesome, I agree

As far as I can tell, prisma has turned into just an open source typescript query builder (probably the best in it's class though). Prisma used to be graph.cool which was very similar to Hasura.

Wow epic comment.

Serious question though, why post hog & metabase? Dont they overlap?

Sort of. They're capable of analytics, but Metabase is a Business Intelligence tool, and Posthog is focused on user interaction/website analytics.

They both give you incredibly useful data, but different kinds. Metabase lets you analyze trends/relationships in your overall database-layer data. Posthog lets you analyze how users are interacting with your website/app and where your traffic is coming from.

It's like Tableau vs Mixpanel/Amplitude.

Not my comment, just one I found exceptionally useful for the Hasura piece.

Looks great, I will check it out

With admin/client part builder, all open source and can be self-hosted:

(Node) https://strapi.io/

(PHP) https://directus.io/

(PHP) https://getcockpit.com/

Try https://github.com/anvil-works/anvil-runtime

No JavaScript nonsense all python code

I would say that in the world of Web applications Python is the nonsense :)

Mind explaining why you believe so?

Well, not a belief more like a practicaly oriented mindset :)

In any modern web application you most probably will end up using Javascript for the frontend part, and you have plenty of choice for the backend, which actually includes some really good options both in Javascript and Typescript.

So choosing Python makes you swtich languages between FE and BE.

Then if we are talking about the BE, Javascript is usually more performant, there is bigger choice of libraries and frameworks, and the tooling is simply better ( and improving).

And then there is the async story. Yes Python has a way to write async code, but is more like a patch on top of fully synchronous language rather than full solution, not to mention the very crippled syntax of Python that doesn't let you write anonymous functions.

Yes all true but if I am familiar with php or python I should be able to create an web application without learning javascript. This was possible few years back so if it is not possible anymore then it is a regression IMHO. anvil.works also makes it possible so it is great for creating my apps.

Rails has active admin and a couple of similar options.

I've built quite complex apps with activeadmin, it's worth looking at.

I've built whole apps out of active_scaffold. Really powerful, but still able to be flexible.


Flask-Admin[^1] lets you set up CRUD apps easily. You declare your model and it automatically builds up the CRUD views, which you can restrict, with templates you can customize, and views you can override.

[^1]: https://flask-admin.readthedocs.io/en/latest/

I’ve been using JHipster for a month now and it’s really allowed me to get my side projects off the ground in no time. The CI-CD generator was a huge help too.

React admin is a pretty good framework I've worked with. It's mature and very pleasant to deal with. It's also got data providers for many different databases.


FYI: In the Perl world, CGI::Formbuilder + HTML::Template is a really comprehensive form-centric way of writing CRUD applications.


Literally everything does CRUD. Easier is a mirage you'll never reach. I say add Snippets for common things and more file generating and keep cracking with Rails. You'll speed up in no time.

I've seen people mention react admin on here, but I haven't gotten round to trying it out myself.

I’ve used strapi in production apps. Works great, and has a graphql plugin. I’d recommend it!

Since you're using Rails, ActiveAdmin is pretty slick. It's an entirely new DSL (see: potential technical debt), but once you get the hang of it, it's hard to beat.

There's also https://github.com/activeadmin/inherited_resources which is what ActiveAdmin uses under the hood. This will take away a lot of the pain of creating said forms.

Obviously you could `rails g scaffold` too.

You're on Rails, just scaffold everything.

Any solution that provides a UI for you over database tables is going to feel clunky after a while. If your purpose is to just get something up, use Rails scaffold and throw some bootstrap at it.

When you reach the point where you need more sophistication in your UI, then you can more easily pivot from a set of templates created from scaffold vs. getting locked into something like Active Admin.

Use Active Admin for your dashboards. Inherited resources for controllers, which generates a set of restful actions for a model. And simple form for your forms. They’re all rails ready ruby gems.

This covers 60-80% of the most basic CRUD use cases. Though with any reasonably robust real world application you'll still need to write a lot of more specific, custom logic for the pages that are critical to your domain.

If python is considerable, I'd recommend Flask AppBuilder :https://github.com/dpgaspar/Flask-AppBuilder I used it myself in a freelance project

It has pretty everything I needed

CouchDB+PouchDB: Serve pages directly from DB

Jasonelle[0]: Write mobile native apps using JSON

[0] https://jasonelle.com

I've been playing with hyperfiddle (clojure): http://www.hyperfiddle.net/

+1 for Hyperfiddle. Solid, powerful, visionary product.

Yii Framework for PHP has a pretty decent CRUD generation tool integrated into it.


If you're into Node/Typescript you should have a look at Warthog. It looks a lot like the old Prisma 1 https://github.com/goldcaddy77/warthog

Elixir + Phoenix + Pow (although very soon there will be ‘mix phx. gen auth’ https://hexdocs.pm/phx_gen_auth/overview.html)

Also flask—admin for flask: https://github.com/flask-admin/flask-admin

I find flask-admin easier to customize than django’s admin. The django ecosystem has a ton of libraries to add functionality to django admin though.

There is also Yazz Pilot, works on nodejs, docker, k8s or as an .exe or binary. https://github.com/zubairq/pilot

Have you looked at openxava (https://www.openxava.org/)

https://www.userfrosting.com/ is a good start if you need multiple users and ACLs.

Django's admin is pretty good.

I've been seeking a terminal based CRUD for ages.

We're working on some futurology like technology, and something like this will be possible by the end of the quarter. If you'd like to follow along:

https://github.com/hofstadter-io/hof (core tech)

https://github.com/hofstadter-io/_saas (open source "SaaS" to replace all those services you pay for today, and the primary example of building applications in hof-land)

divjoy.com is good for simple CRUD apps

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact