NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface!
NocoDB currently works with MySQL, PostgreSQL, Microsoft SQL Server, SQLite, Amazon Aurora & MariaDB databases.
This allows you to build no-code business solutions collaboratively with teams.
Getting started is simple :
docker run -p 8080:8080 nocodb/nocodb
or
npx create-nocodb-app
Also NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too.
For storage you can connect to S3, Mini, GCS, Azure, DigitalOcean spaces & any S3 compatible API
NocoDB gives programmatic access to REST & GraphQL APIs. And with our API tokens it can be easily integrated with Zapier / Integromat.
I'm very excited, looking at the GitHub stars in just 24 hours after launch it looks like many others are. This looks like a text book example of successful 'Show HN' launch.
So my question is really regarding this launch, rather than NocoDB itself as all pertinent questions regarding it seems to have been asked.
I see you have got some feedback on your website regarding NocoDB after production deployment by some companies, How long you folks have been developing NocoDB? Were you using your personal funds for development?
All the best, Hope NoCoDB turns out to be another successful dual-licensed startup.
FYI, I think you are using the wrong logo on Vasyl Rakivnenko testimonial. You using the Spanish Servired (a bank network) logo instead of the Polish Servired (Road Transportation).
WOW! I am so excited by this. I'm going to build some nice CRMs and project management tools for my clients - small and growing service businesses - and attempt a cool integration with graphing and Matrix.
This is so important and the opening up of code / databases to non-technical people will create so much value.
Maybe we can work together on it! (I guess, open source means we will be)
Looks good in the Github Readme file, but having tested the docker-compose/pg setup via docker-compose I think you still have some work to do. A lot of things result in an error, or are not possible yet.
E.g. I tried a simple example with A country table containing an iso-code and a name, and a company table containing a name and a country. Somehow I can not use the iso code in the company table, I am forced to use the auto-incrementing primary key. I am not able to set iso-code column as unique which would solve my issue.
---------------------------------
The app also has UI problems. E.g. when adding a new row, one the last field edited seems to be still in editing mode since the value is left-bound and not centered like the other values. Only after entering another field the value seems to be recognized as changed and I can save the data.
Clicking on "Swagger apis dock" results in following error message "Cannot GET /nc/testproject_rest_api_HZOx/v1/graphql".
---------------------------------
Having added a few images via attachment column, I noticed that I can access those from a incognito window where I am definitely not logged in.
Hotjar seems to be a tool tracking the user interactions with the product -> https://www.hotjar.com/
This is where I stopped evaluating your product LOL
---------------------------------
Clicking on Calendar, Kanban, and Form results in a "Coming soon" message. Which is curious since, your website demonstrates it already.
---------------------------------
Those rules saying delete cascade seem to be nonsense. I was able to delete rows in both tables (country, company) without any cascading happening which would result in an inconsistent state. --> Foreign keys seem only to exist within your applications metamodel and they don't seem to be respected accordingly.
---------------------------------
My final verdict: You have a lot of work ahead of you if you want to bring this into a production ready state. Until then I recommend to others not using it with your production databases, and because of coming with the hotjar user action tracking tool not use and privacy related data with it.
This looks more featured than Seatable I was looking into.
A few questions on features and plans:
1. Are all the views mobile friendly,
2. Any plan for a map view,
3. Multiple views in a page? (aka dashboard)
4. How does AGPL affect getting payed to create a solution based on this? I'm not talking about offering it as a service as is as happens with elastic, redis and the cloud providers.
Great news. I don't know if anyone remembers this, but there used to be a program called Ecco Pro that Airtable really reminded me of. I haven't run Ecco in probably 20 years to more so I could be entirely off the mark, but the "freeform spreadsheet" seems really similar.
Is Airtable being closed-source a problem anyone has ever had?
"I was going to use this hosted, no-code spreadsheet/database platform, but then I realized it's closed source!" is not something anyone who ever would have paid for Airtable has ever said.
> Is Airtable being closed-source a problem anyone has ever had?
Yes
> "I was going to use this hosted, no-code spreadsheet/database platform, but then I realized it's closed source!" is not something anyone who ever would have paid for Airtable has ever said.
No, but “I would like, and pay for, something like that no-code database solution, but Airtable doesn’t meet our data compliance requirements and I can’t host it on ones I control to resolve that” its something I've heard.
The product is great but their free tier row limitation is really low (500 rows per database). And then paid plans are expensive.
I was building a Jamstack site for my dad[0] using Airtable-as-a-backend, and we almost ran out for rows for his Soviet camera collection. We had to work the model around this limitation. It's not the kind of thing that made sense to pay for monthly even if the plans were cheap, and they're not.
It seems like it would make sense for teams that would prefer an on-prem or privately hosted solution without paying enterprise rates. It’s also probably cheaper for teams in general depending on how much work it takes to install and administer.
According to their support site, Airtable doesn’t even support on-prem. [0]
Unless the company shutdown or sold and suddenly you can't access your data easily or the new company changes the features drastically. I think that many companies can't afford to have their data at the mercy of an outside company with no alternatives.
I guess this can be implemented as an admin layer on your own application, and also handle sensitive data that may not be copied to a third party for various reasons including regulatory.
I’ve used a lot of pluggable admin interfaces for opening up tables to interrogation and manipulation by non tech people, and this seems better than those, and airtable was usually never on the table.
I want to run this on a raspberry pi/desktop computer and have access to all the features i want for free, and you don't get that with Airtable - but you do foor a FOSS solution. Hobby users like me probably don't want lots of SaaS platforms when they can self host. Airtable is the SaaS i like the most, and desperately wanted it to self host.
Also, while the data isn't critical for me, a self-hosted solution ensures the data is private.
Because nobody who has a problem with closed source Airtable even considers pay for it.
Ask how many avoided Airtable because it's a closed source hosted platform.
well, there's some ironic sort of logic at least in my head which says that I can afford to get locked into a proprietary solution only when I know there is a good (preferably open source) fallback option if it all goes to hell. So in a rather bizarre kind of way, this is what might enable me to consider Airtable where I had previously not.
Is there any chance to build in SQL (specifically, Postgres) commands similar to how Supabase does into the UI? (I should also mention, this looks perhaps even better than Supabase and easier to get up and running on your own system!). The built in REST and GraphQL API points are beautiful.
We've full fledged SQL Editor support in the product. Also support for SQL views, procedures etc. It is not shown in UI as there is lot to take in. So it will be in shortly :)
NocoDB can be run as a single node.js file which has just SIX lines of code in it.
So entire NocoDB stack can be run a repl.it / glitch too! :) - This makes it insanely powerful & ubiquitous.
Looks great! Can I extend it? Does it have plugin/hook etc. support?
I've just tried it with an SQLite database. It doesn't seem to support `BLOB` columns (that's reasonable). I would have liked to be able to display images in BLOB columns as virtual attachments or show a download link.
Yes we have hooks for spreadsheet inserts/updates/deletes and we will be working on the frontend part to make it modularised as mentioned in another comment.
Store images in BLOBs - we aren't against it. But we ran short of time to make that work for all databases.
For file storage : it used local filesystem if no storage app is installed.
You can connect to wide variety of storage services : S3, Minio, BackBlaze, GCS, Azure to name a few. I believe Azure storage isn't tested as we didn't have credits with them :)
Or build consulting, management and integration partners. Strategic use of tools / trainings, etc. are really important. See how Oracle grows with consulting teams.
It looks pretty, but has some fairly substantial problems.
- Data collection: Generally feels nasty these days, especially on something self-hosted. The opt-in-by-default newsletter checkbox might even be illegal in Europe. Don't know what else it might be calling home about without checking the source.
- Deceptive data collection: The HotJar survey popping up starts making you think maybe it needs to know where you host images so that it can handle image uploads... but no, it just wants to collect data and dial home
- Docs say that the docker instance starts on port 8080 - it isn't, it's on 5000
- Email and password validation: it's a little thing, but that should be at least configurable. Valid emails can contain "+" character.
- Couldn't work out how to connect from one docker instance to a second docker instance mysql database. Might need some kind of docker-compose setup though, I didn't look that long
- Couldn't create a new database either. It said it created, but then wouldn't let me add a table, just errored. No idea why on that one.
This is great, I've been getting into using airtable / coda for some house management stuff, but I've not liked that it's in the cloud (because I want to be more sure that I can look back 5 years and still see it).
What an interesting development. Now I can (ab)use a spreadsheet in all sorts of unexpected ways. This appeals to both my lazy and hardworking sides simultaneously.
I like the landing page examples as well. Trello/calendar/discord... nice.
Kinda off topic but I'm curious, what's the proper strategy to adopt as a company when someone copies your product and distribute it legally for free? Do nothing (individuals & small companies that are going to self host the product were never your market anyway)? Offer a self-hosted plan too? Obviously it depends for each company. I wonder if there are companies who famously changed their offer following the release of a free/self-hosted/open-source competing product.
> when someone copies your product and distribute it legally for free
This is society’s collective goal, as exemplified by patents. After ~15 years of legal monopoly, they’re public & anyone can use them. Copyrights take longer, but eventually do the same.
Companies plan for this by continuing to introduce incremental product changes, extending the monopoly period in small ways. Take a look at Wordpress, Lego, and Disney who deal with this in different ways.
Just market to the enterprise buyers. All they want to do is pay for someone to be liable when their system breaks, and many people make lots of money in that business of scapegoating.
as crazy as it sounds, there are many large, enterprise clients that have to pay for vendors, they literally are not structured to implement free/O.S. software. i imagine that those large orgs are much more significant contributors to a software company's revenue than the small start-ups that might be more able to implement an O.S. alternative.
This is such an excellent release! I am already thinking of a many of use cases for our own org by combining this with Next.JS and build a self-hosted no-code API powered, headless CMS!
One service you could offer and charge heavily for is converting customers’ old Access or FileMaker applications to your system. You could automate a bunch of that too.
Interested that the project started as a REST API generator for any MySQL database [1], and then in a year was transformed to what can be seen today from what I gather following the git log.
Yes, Xmysql was a hobby project originally submitted on HN. Below is the gist of it.
We open sourced two API solutions before NocoDB :
- A no-code REST APIs generator for any MySQL DB. ~200,000 Docker pulls. This was a hobby project & had no GUI.
- A low-code REST-GraphQL APIs generator for any database with GUI. Used by 100s of companies. Including fortune 500s & publicly trading companies.
The thing that surprised us the most was that even non-developers started using our API products & rooting for us. Whilst everybody loved instant API access to databases, it was slow-and-painful for them to build UI and collaborate with their teams. This made us to radically recombine the power of our 2 API products then transform them into something better.
Congrats on a successful launch! It’s interesting that this submission is close to beating Airtable’s original Show HN submission from 7 years ago in points [0].
How do you plan to make money and sustain vitality from this open source offering?
Open source has a lot of overhead, and if you offer “enterprise” versions, others will compete with you, or worse, Amazon may offer your service for free as a bundle.
[+] [-] rnavi|4 years ago|reply
We are really excited to open source NocoDB today.
NocoDB is an open source Airtable alternative.
Github : https://github.com/nocodb/nocodb
NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface!
NocoDB currently works with MySQL, PostgreSQL, Microsoft SQL Server, SQLite, Amazon Aurora & MariaDB databases.
This allows you to build no-code business solutions collaboratively with teams.
Getting started is simple :
Also NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too.For storage you can connect to S3, Mini, GCS, Azure, DigitalOcean spaces & any S3 compatible API
NocoDB gives programmatic access to REST & GraphQL APIs. And with our API tokens it can be easily integrated with Zapier / Integromat.
- - - - - -
Also please join our community at :
- Github : https://github.com/nocodb/nocodb
- Discord : https://discord.gg/5RgZmkW
- Twitter : https://twitter.com/nocodb
Would love to hear usecases & feedback.
Thank you,
Team NocoDB
edit : made the comment short :)
[+] [-] Abishek_Muthian|4 years ago|reply
So my question is really regarding this launch, rather than NocoDB itself as all pertinent questions regarding it seems to have been asked.
I see you have got some feedback on your website regarding NocoDB after production deployment by some companies, How long you folks have been developing NocoDB? Were you using your personal funds for development?
All the best, Hope NoCoDB turns out to be another successful dual-licensed startup.
[+] [-] syrusakbary|4 years ago|reply
You should apply to YCombinator S21 batch! (feel free to use my reference: syrusakbary if you would like!)
https://www.ycombinator.com/apply/
[+] [-] tecleandor|4 years ago|reply
FYI, I think you are using the wrong logo on Vasyl Rakivnenko testimonial. You using the Spanish Servired (a bank network) logo instead of the Polish Servired (Road Transportation).
I think this is the correct one: https://www.linkedin.com/company/servired-sp-z-o-o-/
[+] [-] Artistry121|4 years ago|reply
This is so important and the opening up of code / databases to non-technical people will create so much value.
Maybe we can work together on it! (I guess, open source means we will be)
[+] [-] de6u99er|4 years ago|reply
E.g. I tried a simple example with A country table containing an iso-code and a name, and a company table containing a name and a country. Somehow I can not use the iso code in the company table, I am forced to use the auto-incrementing primary key. I am not able to set iso-code column as unique which would solve my issue.
---------------------------------
The app also has UI problems. E.g. when adding a new row, one the last field edited seems to be still in editing mode since the value is left-bound and not centered like the other values. Only after entering another field the value seems to be recognized as changed and I can save the data.
Clicking on "Swagger apis dock" results in following error message "Cannot GET /nc/testproject_rest_api_HZOx/v1/graphql".
---------------------------------
Having added a few images via attachment column, I noticed that I can access those from a incognito window where I am definitely not logged in.
Steps to reproduce:
1. connect to database container -> docker-compose exec --user postgres xcdb psql
2. connect to database -> \c xcdb
3. list tables -> \d
4. select data from the table with attachments (in my case the company table) -> select * from xa1__company;
5. copy one of the urls and paste it in an incognito tab
---------------------------------
Another issue that I see is that it relies a lot on external libraries, of which this one has been blocked by my ad-blocker --> https://static.hotjar.com/c/hotjar-2297736.js?sv=6
Hotjar seems to be a tool tracking the user interactions with the product -> https://www.hotjar.com/
This is where I stopped evaluating your product LOL
---------------------------------
Clicking on Calendar, Kanban, and Form results in a "Coming soon" message. Which is curious since, your website demonstrates it already.
---------------------------------
Those rules saying delete cascade seem to be nonsense. I was able to delete rows in both tables (country, company) without any cascading happening which would result in an inconsistent state. --> Foreign keys seem only to exist within your applications metamodel and they don't seem to be respected accordingly.
---------------------------------
My final verdict: You have a lot of work ahead of you if you want to bring this into a production ready state. Until then I recommend to others not using it with your production databases, and because of coming with the hotjar user action tracking tool not use and privacy related data with it.
[+] [-] antman|4 years ago|reply
1. Are all the views mobile friendly,
2. Any plan for a map view,
3. Multiple views in a page? (aka dashboard)
4. How does AGPL affect getting payed to create a solution based on this? I'm not talking about offering it as a service as is as happens with elastic, redis and the cloud providers.
5. How do we create plugins?
[+] [-] stinkytaco|4 years ago|reply
[+] [-] wolpoli|4 years ago|reply
[+] [-] nocodb|4 years ago|reply
Was aware of DabbleDB : https://www.youtube.com/watch?v=6wZmYMWKLkY
[+] [-] dadrian|4 years ago|reply
"I was going to use this hosted, no-code spreadsheet/database platform, but then I realized it's closed source!" is not something anyone who ever would have paid for Airtable has ever said.
[+] [-] dragonwriter|4 years ago|reply
Yes
> "I was going to use this hosted, no-code spreadsheet/database platform, but then I realized it's closed source!" is not something anyone who ever would have paid for Airtable has ever said.
No, but “I would like, and pay for, something like that no-code database solution, but Airtable doesn’t meet our data compliance requirements and I can’t host it on ones I control to resolve that” its something I've heard.
[+] [-] dmitryminkovsky|4 years ago|reply
I was building a Jamstack site for my dad[0] using Airtable-as-a-backend, and we almost ran out for rows for his Soviet camera collection. We had to work the model around this limitation. It's not the kind of thing that made sense to pay for monthly even if the plans were cheap, and they're not.
[0] https://alex.minkovsky.online
[+] [-] maddyboo|4 years ago|reply
According to their support site, Airtable doesn’t even support on-prem. [0]
[0]: https://support.airtable.com/hc/en-us/articles/202576389-Can...
[+] [-] JamesAdir|4 years ago|reply
[+] [-] krrrh|4 years ago|reply
I’ve used a lot of pluggable admin interfaces for opening up tables to interrogation and manipulation by non tech people, and this seems better than those, and airtable was usually never on the table.
[+] [-] vineyardmike|4 years ago|reply
Also, while the data isn't critical for me, a self-hosted solution ensures the data is private.
[+] [-] nocodb|4 years ago|reply
[+] [-] fragileone|4 years ago|reply
[+] [-] croes|4 years ago|reply
[+] [-] zmmmmm|4 years ago|reply
[+] [-] unknown|4 years ago|reply
[deleted]
[+] [-] bayindirh|4 years ago|reply
[+] [-] drannex|4 years ago|reply
Is there any chance to build in SQL (specifically, Postgres) commands similar to how Supabase does into the UI? (I should also mention, this looks perhaps even better than Supabase and easier to get up and running on your own system!). The built in REST and GraphQL API points are beautiful.
Looking forward to using this!
[+] [-] nocodb|4 years ago|reply
>> Is there any chance to build in SQL commands.
We've full fledged SQL Editor support in the product. Also support for SQL views, procedures etc. It is not shown in UI as there is lot to take in. So it will be in shortly :)
NocoDB can be run as a single node.js file which has just SIX lines of code in it.
So entire NocoDB stack can be run a repl.it / glitch too! :) - This makes it insanely powerful & ubiquitous.
https://github.com/nocodb/nocodb-seed/blob/main/index.js
[+] [-] abdusco|4 years ago|reply
I've just tried it with an SQLite database. It doesn't seem to support `BLOB` columns (that's reasonable). I would have liked to be able to display images in BLOB columns as virtual attachments or show a download link.
Edit: It actually does!
https://github.com/nocodb/nocodb/tree/master/packages/nc-plu...
But there doesn't seem to be any documentation for it yet.
[+] [-] nocodb|4 years ago|reply
https://youtu.be/H4qBE0T47b4
Store images in BLOBs - we aren't against it. But we ran short of time to make that work for all databases.
For file storage : it used local filesystem if no storage app is installed.
You can connect to wide variety of storage services : S3, Minio, BackBlaze, GCS, Azure to name a few. I believe Azure storage isn't tested as we didn't have credits with them :)
[+] [-] endisneigh|4 years ago|reply
[+] [-] Artistry121|4 years ago|reply
[+] [-] nocodb|4 years ago|reply
[+] [-] undecisive|4 years ago|reply
- Data collection: Generally feels nasty these days, especially on something self-hosted. The opt-in-by-default newsletter checkbox might even be illegal in Europe. Don't know what else it might be calling home about without checking the source.
- Deceptive data collection: The HotJar survey popping up starts making you think maybe it needs to know where you host images so that it can handle image uploads... but no, it just wants to collect data and dial home
- Docs say that the docker instance starts on port 8080 - it isn't, it's on 5000
- Email and password validation: it's a little thing, but that should be at least configurable. Valid emails can contain "+" character.
- Couldn't work out how to connect from one docker instance to a second docker instance mysql database. Might need some kind of docker-compose setup though, I didn't look that long
- Couldn't create a new database either. It said it created, but then wouldn't let me add a table, just errored. No idea why on that one.
And that's kinda where I gave up.
[+] [-] philsnow|4 years ago|reply
I love the audit table, that's a nice touch.
[+] [-] nocodb|4 years ago|reply
[+] [-] adamius|4 years ago|reply
I like the landing page examples as well. Trello/calendar/discord... nice.
[+] [-] ggregoire|4 years ago|reply
[+] [-] mch82|4 years ago|reply
This is society’s collective goal, as exemplified by patents. After ~15 years of legal monopoly, they’re public & anyone can use them. Copyrights take longer, but eventually do the same.
Companies plan for this by continuing to introduce incremental product changes, extending the monopoly period in small ways. Take a look at Wordpress, Lego, and Disney who deal with this in different ways.
[+] [-] smoldesu|4 years ago|reply
[+] [-] forgotmysn|4 years ago|reply
[+] [-] xemoka|4 years ago|reply
[+] [-] toomuchtodo|4 years ago|reply
[+] [-] nocodb|4 years ago|reply
I believe integration with n8n is possible as we do expose APIs.
[+] [-] handoyosutanto|4 years ago|reply
[+] [-] nocodb|4 years ago|reply
NocoDB can be run as a single node.js file and it is just SIX lines of code.
https://github.com/nocodb/nocodb-seed/blob/main/index.js
Just mount nocodb into your express.js and it's done.
[+] [-] mrfusion|4 years ago|reply
[+] [-] fcsp|4 years ago|reply
[+] [-] nocodb|4 years ago|reply
https://github.com/nocodb/nocodb/runs/2687614633?check_suite...
[+] [-] sdfhbdf|4 years ago|reply
[1]: https://github.com/nocodb/nocodb/tree/0.4.9
[+] [-] nocodb|4 years ago|reply
We open sourced two API solutions before NocoDB : - A no-code REST APIs generator for any MySQL DB. ~200,000 Docker pulls. This was a hobby project & had no GUI. - A low-code REST-GraphQL APIs generator for any database with GUI. Used by 100s of companies. Including fortune 500s & publicly trading companies.
The thing that surprised us the most was that even non-developers started using our API products & rooting for us. Whilst everybody loved instant API access to databases, it was slow-and-painful for them to build UI and collaborate with their teams. This made us to radically recombine the power of our 2 API products then transform them into something better.
[+] [-] peterthehacker|4 years ago|reply
[0]https://news.ycombinator.com/item?id=8373914
[+] [-] louisvgchi|4 years ago|reply
Open source has a lot of overhead, and if you offer “enterprise” versions, others will compete with you, or worse, Amazon may offer your service for free as a bundle.
I’m interested in hearing your plan.