Hacker News new | past | comments | ask | show | jobs | submit login
Undb – Private first, unified, self-hosted no code database (github.com/undb-xyz)
171 points by nichenqin on June 20, 2023 | hide | past | favorite | 50 comments



I love the idea of an Airtable/Notion open source alternative, but I haven't seen any projects yet that look like a solid long-term bet.

NocoDB is neat, but looks like it's a single vendor-driven project that could go open core or die altogether if funding dries up.

Baserow also looks good, but already appears to be open core and another single-vendor project.

Undb might be a more community driven project over time. Hard to say - it looks like there's 6 contributors currently and there's not much info I could find by way of governance or company info to determine where they want to go.

Single-vendor open core (SVOC) can move quickly but it tends to degrade and disappoint over time. I would love to see a project of this sort that's actually trying to be truly community driven.

That's probably unrealistic, but I don't know if there's a ton of value in an open core solution over just using Airtable or Notion if some of the best bits are closed anyway and the fully closed alternatives are more polished and straightforward.


We're trying to build a community driven project in this space - https://github.com/centerofci/mathesar. We just did our alpha release a couple of months ago.

I'm philosophically opposed to open core (Mathesar is run out of a non-profit), but I can see why other projects do it – finding funding for a big project like this is difficult without VCs (who expect returns).


Oh, cool. Will check this out! Thanks!


Regarding the inevitable degradation of open core, is your experience that they get actively worse or just stale? How would you balance that against something that’s good enough today for what you need today? (Ie, is being good enough today enough signal that it will stay good enough in the future if requirements don’t expand?)


In general, I think it gets actively worse - there may well be exceptions. And I'm less concerned about open core built on things like Apache projects where open source project is not controlled by a single vendor (or shouldn't be) but vendors can add proprietary things or expand out from the core project. But generally I am hesitant about SVOC.


The thing about open core is that the non-core parts are usually the ones bringing money home to pay for the development of the core. So most times the alternative wouldn't be a fully open source project, but probably a nonexistent one.


"So most times the alternative wouldn't be a fully open source project, but probably a nonexistent one."

That may be true. Or it may stall development of a truly open project, if the open core is widely adopted and people accept it as good enough until what's considered "core" shrinks (e.g. features closed that used to be open) or some other shift.


I'm trying to understand what am I looking at. MS Access like db+ui in browser, with homemade engine and no sql support? What are guarantees here, concurenncy, isolation, single user? Not much on the main page.


DB engine appears to be sqlite. It's in the tags on the main page and there's a file full of sql to create what looks like a sample db in the data/ dir.


Sqlite is fine, could we call this product somehow differently? I don't feel it's database, it's database frontend or smth.


You are right, it's not a database, so I call it undb :P


It seems more along the lines of a "headless CMS", which is basically just extensible CRUD often with API endpoints; compare it to Strapi. This one looks finished enough to play around with at least.


Would prefer mainline DB engine like Postgres or MySQL


Check baserow.io then ;)


why?


Undb handles reference for you, which is always most hard/difficult part to handle in most lowcode system, so it's not just a database frontend. It's like MS access when you link reference in the access ui, but undb can also handle lookup & rollup in browser


GP didn't ask about references. They asked what the tool actually was, and asked about the types of guarantees it provides compared to a known RDBMS.


I got it. And in my opinion the most value undb provide is to handle the reference part which you always have to impl in code when you use traditional RDBMS. Also it provides typed api, real-time sub and user friendly views


...You're still not answering the question. What are the ACID properties? Why is SQL, a standard for database query languages, not supported?


It supports, but just hard to write for people don't know sql


By “reference” you mean like foreign key reference? Joins?


From what I can gather, it looks to be somewhat of a self-hosted alternative to Airtable


This is pretty cool! I'm not sure what I would use it for, but it seems like it's definitely useful.

I've been in the midst of developing my own frontend (SPA/PWA) data storage solution, using IndexedDB (and the Dexie library), so I've been watching all of the recent announcements about the wasm-sqlite implementations and wondering if I should probably just switch over to that. If, for nothing else, for the exportable .sqlite file that would be available without having to do a custom "Database Export".

With that in mind, I'd be much more interested in a clean library that abstracts sqlite data access, but stores it in the same format. That way, I could implement the library in my frontend app to store data, and then use the sqlite files that can be exported to load into your Undb app to inspect them (I'm thinking for, say, error debugging or whatever). Similar to how I might pull a client's db backup and load it into Microsoft's SSMS management app.

But hey, maybe that's in the roadmap! And, even if not, it's still a great utility all on its own. And it seems to be a solidly made and well-styled app. Very interested to see if other people have some obvious use cases for this.


I like your idea!


This looks pretty neat and I might try it out for personal stuff.

That said, in comparison to other similar software:

- For standalone use: there's a lot of similar software like budibase, baserow, nocodb, etc. which is heavier weight (distributed as a docker container) but more featureful

- For use with a custom frontend: I'm not sure I would pick it when it's AGPL, since PocketBase is roughly comparable as a single-file sqlite-based backend and it's MIT license.


thanks for you feedback, there is more feature on our roadmap and it will always be local friendly and easy to host. I'll consider to switch undb to MIT someday.


If you license APL you can always offer MIT (or even proprietary) for a fee.


I've been looking at and trying the class of easy to host, api-fied db/table frontend tools for a while. Clicking around your demo the sought-after functionality is there and the roadmap looks promising, good job!

Some ui-breakpoints for a mobile view on tables are missing and not yet catalogued in the issue tracker. Use-case: string searching a table on the go.


Will fix the issues!


Thank you for going with the AGPLv3 as your license!


It's funny how people put funny names on the concept of a spreadsheet nowadays


When I was playing an economics game I was building a lot of simple nocode Google spreadsheets with a little bit of JavaScript to import data. You could share your spreadsheets among friends and everyone made their own copy which they modified to suit their own needs.

I thought about some very trivial apps that are worth building but not worth the cost of the usual stacks. We are talking about the equivalent of a simple desktop app that doesn't need hosting except you don't want to use the local filesystem because you want to synchronize your data between devices. The actual app could be a simple SPA. It doesn't matter how it is implemented. What I am missing is the storage concept. There is remoteStorage.js but nobody adopted it.


We play Path Of Exile, an ARPG game with lots of trading and economy in our friend group. We have a Jupyter Notebook running on Google Colab, that extracts data from the game servers, and pushes the data into a Google Spreadsheet as a persistence layer.

We have Sheets for data ingestion, and other sheets that do the business logic.

This turned out to be a surprisingly well working pipeline and comes at zero hosting costs. We could just run Jupyter Lab somewhere, but this would cost too much and not nearly as quick to handle for our case.


this is more like MS Access, less like MS Excel


MS Access is a dead product though.


It seems like they literally use the content from the Baserow website on their homepage. "Create your own online database without technical experience. Our user friendly no-code tool gives you the powers of a developer without leaving your browser."


Very sorry, we did refer to some content on the Baserow website to inspire our ideas and product implementation. We realized that the similarity in the language was due to our negligence. We have immediately made changes to the content and apologize to you and Baserow. We will make sure to avoid such mistakes in the future. Thank you again for your kind reminder.


This is awesome. Reminds me of Access. So many people need this that don’t know they need it


I'm a big fan of Ms access!


I think I broke something. Made a table named pics, attached 2 random images and now clicking the table shows just the row numbers. Everything else is blank, no rows visible, just the indexes.


Will find out the bug and fix it


That looks interesting!

I currently use NocoDB with a MariaDB database, so I can't easily switch over as Undb doesn't support MySQL as I see. But it has the feature I'm missing in NocoDB: a Calendar View which funnily NocoDB promoted on their website but doesn't have [1]. I guess I'll give it a try!

[1] https://github.com/nocodb/nocodb/discussions/832


Noco Founder here

We just managed to handle all date time and timezone issues which is quite complicated and made a release like a month ago. When we started, we could not have anticipated the difficulties surrounding timezone issues. So we will be getting to Calendar view soon.


Any performance numbers? For instance how might this handle 1M+ records, 15+ columns in a single table?


If you're looking for a performant no-code database, you might want to try Baserow. It's made to scale, and can handle 1M+ rows with 15+ fields. More information about this topic can be found in our 1.17 release blog post here https://baserow.io/blog/1-17-release-of-baserow. Disclaimer: I'm the founder of Baserow.


I tried 60,000 records and 20 columns and display in fe on my Mac in 4 seconds, not a official benchmark but sqlite have impressive performance


Like pocketbase sorta...


Love the SvelteKit usage, good job on that departament


I spent about two weeks to migrate from old code from react (nextjs) to sveltekit and I feel svelte is so easy to use and promising.


What drove you to migrate, and out of curiosity, what makes Svelte worth it to you?




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

Search: