<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: o1lab</title>
    <description>The latest articles on DEV Community by o1lab (@o1lab).</description>
    <link>https://dev.to/o1lab</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F206222%2F5509d01b-ef50-45c1-ad05-d67b50690a29.png</url>
      <title>DEV Community: o1lab</title>
      <link>https://dev.to/o1lab</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/o1lab"/>
    <language>en</language>
    <item>
      <title>NocoDB v0.80 - Shareable Grid &amp; Form views! ( Open Source Airtable alternative )</title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Tue, 26 Oct 2021 12:05:34 +0000</pubDate>
      <link>https://dev.to/o1lab/just-released-nocodb-v080-shareable-grid-form-views-4h3i</link>
      <guid>https://dev.to/o1lab/just-released-nocodb-v080-shareable-grid-form-views-4h3i</guid>
      <description>&lt;h2&gt;
  
  
  NocoDB v0.80
&lt;/h2&gt;

&lt;p&gt;Hey Everybody, Everybody, 👋👋&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb"&gt;NocoDB is a Completely Free &amp;amp; Open Source Airtable alternative&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And with our latest release this week :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can easily share grid and form views publicly.&lt;/li&gt;
&lt;li&gt;You can password protect the public views as well - same feature would cost you &lt;strong&gt;$20/user/month in Airtable&lt;/strong&gt; 😎🤑&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mzwXen0P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s7u21z6ljzr4fkbekg81.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mzwXen0P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s7u21z6ljzr4fkbekg81.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PGsLU3s6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ggb19sxd00bi45144qvq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PGsLU3s6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ggb19sxd00bi45144qvq.png" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting started is simple :
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -d -p 8080:8080 nocodb/nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;For upgrade : &lt;a href="https://docs.nocodb.com/getting-started/upgrading"&gt;click here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;For production setup : &lt;a href="https://docs.nocodb.com/getting-started/installation#production-setup"&gt;click here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Feature Highlights:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Customize grid data into different views depending on the team's needs

&lt;ul&gt;
&lt;li&gt;Show / hide columns&lt;/li&gt;
&lt;li&gt;Filter rows&lt;/li&gt;
&lt;li&gt;Sort / Order rows&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Create &amp;amp; Share ANY number grid views&lt;/li&gt;
&lt;li&gt;Easily protect shared view access using a password&lt;/li&gt;
&lt;li&gt;Copy/Duplicate existing views as base for a new view, instead of always starting afresh.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Always happy to help:
&lt;/h2&gt;
&lt;h4&gt;
  
  
  Please join our community
&lt;/h4&gt;

&lt;p&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📣   Discord : &lt;a href="https://discord.gg/5RgZmkW"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📣   Twitter : &lt;a href="https://twitter.com/nocodb"&gt;https://twitter.com/nocodb&lt;/a&gt;&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i3JOwpme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative - powered by Vue.js ❤️
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
    &lt;b&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow"&gt;NocoDB&lt;/a&gt;&lt;br&gt;
    &lt;/b&gt;
    🎃 The Open Source Airtable Alternative 🎃 &lt;br&gt;
&lt;/h1&gt;
&lt;p&gt;
Turns any MySQL, PostgreSQL, SQL Server, SQLite &amp;amp; MariaDB into a smart-spreadsheet
&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;&lt;a href="https://travis-ci.com/github/NocoDB/NocoDB" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/4e084bac046962268fcf7a8aaf3d4ac422d3327564f9685c9d1b57aa56b142e9/68747470733a2f2f7472617669732d63692e6f72672f6477796c2f657374612e7376673f6272616e63683d6d6173746572" alt="Build Status"&gt;&lt;/a&gt;
&lt;a href="http://nodejs.org/download/" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/78a6449b07220242899619ce10cd5c39cc1e74992b768d308bd98f2a7e9995ae/68747470733a2f2f62616467656e2e6e65742f6e706d2f6e6f64652f6e657874" alt="Node version"&gt;&lt;/a&gt;
&lt;a href="https://twitter.com/NocoDB" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/ec77e5fb18e5c0eef7b879f7b1473bc68ce6a354bdfdb9510c3bf70ad168eded/68747470733a2f2f696d672e736869656c64732e696f2f747769747465722f75726c2f68747470732f747769747465722e636f6d2f4e6f636f44422e7376673f7374796c653d736f6369616c266c6162656c3d466f6c6c6f772532302534304e6f636f4442" alt="Twitter"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133762127-e94da292-a1c3-4458-b09a-02cd5b57be53.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PB_59gfR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133762127-e94da292-a1c3-4458-b09a-02cd5b57be53.png" alt="The Open Source Airtable Alternative - works on MySQL, Postgres SQL Server &amp;amp; MariaDB" width="1000px"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/chinese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--90Rwt9R8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/french.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--W6hz37RN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/german.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--C0_U00RX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/spanish.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--_-j2cYrJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/portuguese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ku2kMFme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/italian.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--I1U27cQL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/japanese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--m8lIZ7pi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/korean.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--cGasqxQI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/russian.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--0ScJCMmi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbscripts/markdown/readme/languages/README.md"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/62d299d2b7261e4c5f757e5ac9bc313ef9203b9b819dedf340db82138f8da065/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/62d299d2b7261e4c5f757e5ac9bc313ef9203b9b819dedf340db82138f8da065/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.producthunt.com/posts/nocodb?utm_source=badge-featured&amp;amp;utm_medium=badge&amp;amp;utm_souce=badge-nocodb" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/9cff91c3d5ada7906ec16f4adbde10de461bf84718d3cfbb0d37c8ca1ffc2a2d/68747470733a2f2f6170692e70726f6475637468756e742e636f6d2f776964676574732f656d6265642d696d6167652f76312f66656174757265642e7376673f706f73745f69643d323937353336267468656d653d6461726b" alt="NocoDB - The Open Source Airtable alternative | Product Hunt" width="250" height="54"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
Quick try&lt;/h1&gt;

&lt;h3&gt;
1-Click Deploy&lt;/h3&gt;

&lt;h4&gt;
Heroku&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://heroku.com/deploy?template=https://github.com/npgia/nocodb-seed-heroku" rel="nofollow"&gt;&lt;br&gt;
    &lt;img src="https://camo.githubusercontent.com/6979881d5a96b7b18a057083bb8aeb87ba35fc279452e29034c1e1c49ade0636/68747470733a2f2f7777772e6865726f6b7563646e2e636f6d2f6465706c6f792f627574746f6e2e737667" width="300px" alt="Deploy NocoDB to Heroku with 1-Click"&gt;&lt;br&gt;
&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h3&gt;
Using Docker&lt;/h3&gt;

&lt;div class="highlight highlight-source-shell position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;To persist data you can mount volume at &lt;code&gt;/usr/app/data/&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
Using Npm&lt;/h3&gt;
&lt;div class="snippet-clipboard-content position-relative overflow-auto"&gt;&lt;pre&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
Using Git&lt;/h3&gt;
&lt;div class="snippet-clipboard-content position-relative overflow-auto"&gt;&lt;pre&gt;&lt;code&gt;git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
GUI&lt;/h3&gt;
&lt;p&gt;Access Dashboard using : &lt;a href="http://localhost:8080/dashboard" rel="nofollow"&gt;http://localhost:8080/dashboard&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
Join Our Community&lt;/h1&gt;
&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/f53c888344a1bf750cf63ed4f011ff17e7f73a2598a97e4a90410d66ab8a24b0/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;
&lt;/a&gt;
&lt;br&gt;
&lt;h1&gt;
Screenshots&lt;/h1&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759229-4275b934-873b-4a9b-9f23-96470fec9775.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Rdup1vIP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759229-4275b934-873b-4a9b-9f23-96470fec9775.png" alt="2"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759218-f8b0bffc-707f-451c-82f2-b5ba2573d6a6.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6LATNShL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759218-f8b0bffc-707f-451c-82f2-b5ba2573d6a6.png" alt="1"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759245-a536165b-55f1-46a8-a74e-1964e7e481c6.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Wv2SIY6A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759245-a536165b-55f1-46a8-a74e-1964e7e481c6.png" alt="7"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759240-dd3f2509-aab7-4bd1-9a58-4c2dff08f2f2.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Zao1XzmB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759240-dd3f2509-aab7-4bd1-9a58-4c2dff08f2f2.png" alt="5"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759242-2311a127-17c8-406c-b865-1a2e9c8ee398.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6vTK1eTn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759242-2311a127-17c8-406c-b865-1a2e9c8ee398.png" alt="6"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759234-9b539029-be36-4a35-b55a-bee3ebd0e010.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AcJfIMgr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759234-9b539029-be36-4a35-b55a-bee3ebd0e010.png" alt="3"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759236-dc182129-3768-4e23-874e-98f5f32e962c.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fdapWRRj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759236-dc182129-3768-4e23-874e-98f5f32e962c.png" alt="4"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759253-bb9bc729-ee28-4f86-ab95-7d112c0815f2.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ve3FcC51--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759253-bb9bc729-ee28-4f86-ab95-7d112c0815f2.png" alt="11"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759250-ebd75ecf-31db-4a17-b2d7-2c43af78a54e.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aS0r1Yof--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759250-ebd75ecf-31db-4a17-b2d7-2c43af78a54e.png" alt="10"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759248-3a7141e0-4b7d-4079-a5f9-cf8611d00bc5.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qWJU8PJV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759248-3a7141e0-4b7d-4079-a5f9-cf8611d00bc5.png" alt="8"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759249-8c1a85c2-a55c-48f6-bd58-aa6b4195cce7.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fXwYsZln--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759249-8c1a85c2-a55c-48f6-bd58-aa6b4195cce7.png" alt="9"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
Features&lt;/h1&gt;
&lt;h3&gt;
Rich Spreadsheet Interface&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
⚡  Search, sort, filter, hide columns with uber ease&lt;/li&gt;
&lt;li&gt;
⚡  Create Views : Grid, Gallery, Kanban, Gantt, Form&lt;/li&gt;
&lt;li&gt;
⚡  Share Views : public &amp;amp; password protected&lt;/li&gt;
&lt;li&gt;
⚡  Personal &amp;amp; locked Views&lt;/li&gt;
&lt;li&gt;
⚡  Upload images to cells (Works with S3, Minio, GCP, Azure, DigitalOcean, Linode, OVH, BackBlaze)&lt;/li&gt;
&lt;li&gt;
⚡  Roles : Owner, Creator, Editor, Viewer, Commenter, Custom Roles.&lt;/li&gt;
&lt;li&gt;
⚡  Access Control : Fine-grained access control even at…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;



</description>
      <category>showdev</category>
      <category>react</category>
      <category>webdev</category>
      <category>vue</category>
    </item>
    <item>
      <title>Generate REST APIs on ANY MySQL database.</title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Thu, 07 Oct 2021 10:40:56 +0000</pubDate>
      <link>https://dev.to/o1lab/in-2-mins-instantly-create-rest-apis-on-any-mysql-database-dk5</link>
      <guid>https://dev.to/o1lab/in-2-mins-instantly-create-rest-apis-on-any-mysql-database-dk5</guid>
      <description>&lt;h2&gt;
  
  
  &lt;a href="https://github.com/nocodb/nocodb"&gt;NocoDB&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;NocoDB is an Open Source Airtable and also the easiest way to create instant REST APIs on any MySQL/Postgres databases. &lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--i3JOwpme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-ba8488d21cd8ee1fee097b8410db9deaa41d0ca30b004c0c63de0a479114156f.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥  🔥 The Open Source Airtable Alternative - Powered by Vue.js ❤️
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h1&gt;
    &lt;b&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow"&gt;NocoDB&lt;/a&gt;&lt;br&gt;
    &lt;/b&gt;
    🎃 The Open Source Airtable Alternative 🎃 &lt;br&gt;
&lt;/h1&gt;
&lt;p&gt;
Turns any MySQL, PostgreSQL, SQL Server, SQLite &amp;amp; MariaDB into a smart-spreadsheet
&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://travis-ci.com/github/NocoDB/NocoDB" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/4e084bac046962268fcf7a8aaf3d4ac422d3327564f9685c9d1b57aa56b142e9/68747470733a2f2f7472617669732d63692e6f72672f6477796c2f657374612e7376673f6272616e63683d6d6173746572" alt="Build Status"&gt;&lt;/a&gt;
&lt;a href="http://nodejs.org/download/" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/78a6449b07220242899619ce10cd5c39cc1e74992b768d308bd98f2a7e9995ae/68747470733a2f2f62616467656e2e6e65742f6e706d2f6e6f64652f6e657874" alt="Node version"&gt;&lt;/a&gt;
&lt;a href="https://twitter.com/NocoDB" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/ec77e5fb18e5c0eef7b879f7b1473bc68ce6a354bdfdb9510c3bf70ad168eded/68747470733a2f2f696d672e736869656c64732e696f2f747769747465722f75726c2f68747470732f747769747465722e636f6d2f4e6f636f44422e7376673f7374796c653d736f6369616c266c6162656c3d466f6c6c6f772532302534304e6f636f4442" alt="Twitter"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133762127-e94da292-a1c3-4458-b09a-02cd5b57be53.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PB_59gfR--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133762127-e94da292-a1c3-4458-b09a-02cd5b57be53.png" alt="The Open Source Airtable Alternative - works on MySQL, Postgres SQL Server &amp;amp; MariaDB" width="1000px"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/chinese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--90Rwt9R8--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/french.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--W6hz37RN--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/german.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--C0_U00RX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/spanish.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--_-j2cYrJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/portuguese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ku2kMFme--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/italian.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--I1U27cQL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/japanese.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--m8lIZ7pi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/korean.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--cGasqxQI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/russian.md"&gt;&lt;img height="38" src="https://res.cloudinary.com/practicaldev/image/fetch/s--0ScJCMmi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/61551451/135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://camo.githubusercontent.com/62d299d2b7261e4c5f757e5ac9bc313ef9203b9b819dedf340db82138f8da065/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/62d299d2b7261e4c5f757e5ac9bc313ef9203b9b819dedf340db82138f8da065/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.producthunt.com/posts/nocodb?utm_source=badge-featured&amp;amp;utm_medium=badge&amp;amp;utm_souce=badge-nocodb" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/9cff91c3d5ada7906ec16f4adbde10de461bf84718d3cfbb0d37c8ca1ffc2a2d/68747470733a2f2f6170692e70726f6475637468756e742e636f6d2f776964676574732f656d6265642d696d6167652f76312f66656174757265642e7376673f706f73745f69643d323937353336267468656d653d6461726b" alt="NocoDB - The Open Source Airtable alternative | Product Hunt" width="250" height="54"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
Quick try&lt;/h1&gt;
&lt;h3&gt;
1-Click Deploy&lt;/h3&gt;
&lt;h4&gt;
Heroku&lt;/h4&gt;
&lt;a href="https://heroku.com/deploy?template=https://github.com/npgia/nocodb-seed-heroku" rel="nofollow"&gt;
    &lt;img src="https://camo.githubusercontent.com/6979881d5a96b7b18a057083bb8aeb87ba35fc279452e29034c1e1c49ade0636/68747470733a2f2f7777772e6865726f6b7563646e2e636f6d2f6465706c6f792f627574746f6e2e737667" width="300px" alt="Deploy NocoDB to Heroku with 1-Click"&gt;
&lt;/a&gt;
&lt;br&gt;
&lt;h3&gt;
Using Docker&lt;/h3&gt;
&lt;div class="highlight highlight-source-shell position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;To persist data you can mount volume at &lt;code&gt;/usr/app/data/&lt;/code&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;
Using Npm&lt;/h3&gt;
&lt;div class="snippet-clipboard-content position-relative overflow-auto"&gt;&lt;pre&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
Using Git&lt;/h3&gt;
&lt;div class="snippet-clipboard-content position-relative overflow-auto"&gt;&lt;pre&gt;&lt;code&gt;git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3&gt;
GUI&lt;/h3&gt;
&lt;p&gt;Access Dashboard using : &lt;a href="http://localhost:8080/dashboard" rel="nofollow"&gt;http://localhost:8080/dashboard&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
Join Our Community&lt;/h1&gt;
&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow"&gt;
&lt;img src="https://camo.githubusercontent.com/f53c888344a1bf750cf63ed4f011ff17e7f73a2598a97e4a90410d66ab8a24b0/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;
&lt;/a&gt;
&lt;br&gt;
&lt;h1&gt;
Screenshots&lt;/h1&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759229-4275b934-873b-4a9b-9f23-96470fec9775.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Rdup1vIP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759229-4275b934-873b-4a9b-9f23-96470fec9775.png" alt="2"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759218-f8b0bffc-707f-451c-82f2-b5ba2573d6a6.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6LATNShL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759218-f8b0bffc-707f-451c-82f2-b5ba2573d6a6.png" alt="1"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759245-a536165b-55f1-46a8-a74e-1964e7e481c6.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Wv2SIY6A--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759245-a536165b-55f1-46a8-a74e-1964e7e481c6.png" alt="7"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759240-dd3f2509-aab7-4bd1-9a58-4c2dff08f2f2.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Zao1XzmB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759240-dd3f2509-aab7-4bd1-9a58-4c2dff08f2f2.png" alt="5"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759242-2311a127-17c8-406c-b865-1a2e9c8ee398.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6vTK1eTn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759242-2311a127-17c8-406c-b865-1a2e9c8ee398.png" alt="6"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759234-9b539029-be36-4a35-b55a-bee3ebd0e010.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AcJfIMgr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759234-9b539029-be36-4a35-b55a-bee3ebd0e010.png" alt="3"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759236-dc182129-3768-4e23-874e-98f5f32e962c.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fdapWRRj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759236-dc182129-3768-4e23-874e-98f5f32e962c.png" alt="4"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759253-bb9bc729-ee28-4f86-ab95-7d112c0815f2.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Ve3FcC51--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759253-bb9bc729-ee28-4f86-ab95-7d112c0815f2.png" alt="11"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759250-ebd75ecf-31db-4a17-b2d7-2c43af78a54e.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aS0r1Yof--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759250-ebd75ecf-31db-4a17-b2d7-2c43af78a54e.png" alt="10"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759248-3a7141e0-4b7d-4079-a5f9-cf8611d00bc5.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qWJU8PJV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759248-3a7141e0-4b7d-4079-a5f9-cf8611d00bc5.png" alt="8"&gt;&lt;/a&gt;
&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://user-images.githubusercontent.com/5435402/133759249-8c1a85c2-a55c-48f6-bd58-aa6b4195cce7.png"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fXwYsZln--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://user-images.githubusercontent.com/5435402/133759249-8c1a85c2-a55c-48f6-bd58-aa6b4195cce7.png" alt="9"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
Features&lt;/h1&gt;
&lt;h3&gt;
Rich Spreadsheet Interface&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
⚡  Search, sort, filter, hide columns with uber ease&lt;/li&gt;
&lt;li&gt;
⚡  Create Views : Grid, Gallery, Kanban, Gantt, Form&lt;/li&gt;
&lt;li&gt;
⚡  Share Views : public &amp;amp; password protected&lt;/li&gt;
&lt;li&gt;
⚡  Personal &amp;amp; locked Views&lt;/li&gt;
&lt;li&gt;
⚡  Upload images to cells (Works with S3, Minio, GCP, Azure, DigitalOcean, Linode, OVH, BackBlaze)&lt;/li&gt;
&lt;li&gt;
⚡  Roles : Owner, Creator, Editor, Viewer, Commenter, Custom Roles.&lt;/li&gt;
&lt;li&gt;
⚡  Access Control : Fine-grained access control even at database, table &amp;amp; column level.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
App&lt;/h3&gt;…&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;h2&gt;
  
  
  Why this ?
&lt;/h2&gt;

&lt;p&gt;Generating REST APIs for &lt;strong&gt;ANY&lt;/strong&gt; exisitng MySql/Postgres database which does not follow conventions of frameworks such as rails, django, laravel etc is a small adventure that one like to avoid .. Hence this.&lt;/p&gt;
&lt;h2&gt;
  
  
  Getting started :
&lt;/h2&gt;

&lt;p&gt;NocoDB is really simple and minimalistic to get started. NocoDB requires either node or docker installed on your machine.&lt;/p&gt;
&lt;h4&gt;
  
  
  Using npm
&lt;/h4&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h4&gt;
  
  
  Using docker
&lt;/h4&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -d -p 8080:8080 nocodb/nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/wSsyMmNjlHc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;
&lt;h1&gt;
  
  
  Documentation
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://docs.nocodb.com/developer-resources/rest-apis"&gt;REST APIs generated&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://docs.nocodb.com/getting-started/installation#production-setup"&gt;Production setup&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Join our community :
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📣   Discord : &lt;a href="https://discord.gg/5RgZmkW"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📣   Twitter : &lt;a href="https://twitter.com/nocodb"&gt;https://twitter.com/nocodb&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Would love to hear your usecases &amp;amp; feedbacks. 🙌&lt;/p&gt;

</description>
      <category>mysql</category>
      <category>react</category>
      <category>vue</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How to build 7,000+ REST APIs within 2 mins (Node.js + MySQL) !!</title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Thu, 30 Sep 2021 14:01:46 +0000</pubDate>
      <link>https://dev.to/o1lab/how-to-build-7-000-rest-apis-within-2-mins-node-js-mysql-470b</link>
      <guid>https://dev.to/o1lab/how-to-build-7-000-rest-apis-within-2-mins-node-js-mysql-470b</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;NocoDB is an open source Airtable alternative&lt;/a&gt; that instantly also generates REST APIs on any MySQL database! &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;For this example :&lt;/strong&gt; &lt;br&gt;
We will be using a fairly large mysql database (close to 400 tables) as input to NocoDB and create REST APIs automatically. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Without further ado-lets get into the gist of things.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pre-requisites
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Node.js or Docker&lt;/li&gt;
&lt;li&gt;An existing MySQL database&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Getting started
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Using npx
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  Using Docker
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -d --name nocodb -p 8080:8080 nocodb/nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Now, let's see a quick demo
&lt;/h2&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/wSsyMmNjlHc"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;In the demo, NocoDB automatically first inferred the database schema then generated REST APIs for each table-and-relation with Swagger documentation! All of this was without write a single line of code.&lt;/p&gt;
&lt;h2&gt;
  
  
  Where can I find more details about NocoDB ?
&lt;/h2&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODcxOTksIm5iZiI6MTcyODQ4Njg5OSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTQ1OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ2ZmUwNDBiZjI3ODRkZmYyNTYwNmQ5NjM1ZjM0YWYwYTQ1NTdlYzM0NzMxODg1MzYzNzcyN2MzZTYxNTNmOTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.s9DZzH3VlS2MkemuRWiVnR3TQULCCoqiWlMWyW56ZZc"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODcxOTksIm5iZiI6MTcyODQ4Njg5OSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTQ1OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQ2ZmUwNDBiZjI3ODRkZmYyNTYwNmQ5NjM1ZjM0YWYwYTQ1NTdlYzM0NzMxODg1MzYzNzcyN2MzZTYxNTNmOTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.s9DZzH3VlS2MkemuRWiVnR3TQULCCoqiWlMWyW56ZZc" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  Does NocoDB support other databases ?
&lt;/h2&gt;

&lt;p&gt;Yes - we do! &lt;/p&gt;

&lt;p&gt;NocoDB does support all of the below databases : &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Postgres&lt;/li&gt;
&lt;li&gt;SQL-server&lt;/li&gt;
&lt;li&gt;SQLite&lt;/li&gt;
&lt;li&gt;MySQL &amp;amp; MariaDB.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Please join our community
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📣   Docs : &lt;a href="https://docs.nocodb.com" rel="noopener noreferrer"&gt;https://docs.nocodb.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📣   Discord : &lt;a href="https://discord.gg/5RgZmkW" rel="noopener noreferrer"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📣   Twitter : &lt;a href="https://twitter.com/nocodb" rel="noopener noreferrer"&gt;https://twitter.com/nocodb&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  FAQs
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Is authentication built in ? Yes&lt;/li&gt;
&lt;li&gt;Is ACL built in ? Yes&lt;/li&gt;
&lt;li&gt;Is collaboration built in ? Yes&lt;/li&gt;
&lt;li&gt;Are webhooks built in ? Yes&lt;/li&gt;
&lt;li&gt;Is there an audit log ? Yes&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  More :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://dev.to/o1lab/how-my-open-source-project-got-angel-investment-from-its-user-12dp"&gt;As an open source project how NocoDB got angel funded&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>react</category>
      <category>database</category>
      <category>vue</category>
      <category>hacktoberfest</category>
    </item>
    <item>
      <title>In 7 lines of node.js - you can turn any database into Airtable like spreadsheet using NocoDB!  </title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Tue, 28 Sep 2021 10:31:37 +0000</pubDate>
      <link>https://dev.to/o1lab/in-7-lines-of-code-you-can-turn-any-database-into-airtable-like-spreadsheet-using-nocodb-51ah</link>
      <guid>https://dev.to/o1lab/in-7-lines-of-code-you-can-turn-any-database-into-airtable-like-spreadsheet-using-nocodb-51ah</guid>
      <description>&lt;h2&gt;
  
  
  So what is Airtable ?
&lt;/h2&gt;

&lt;p&gt;Airtable is a low-code platform for building collaborative apps. It works like a part spreadsheet &amp;amp; part database.&lt;/p&gt;


&lt;h2&gt;
  
  
  How are we going to turn any database into Airtable like spreadsheet ?
&lt;/h2&gt;

&lt;p&gt;Using NocoDB&lt;/p&gt;
&lt;h2&gt;
  
  
  Ok, What is NocoDB ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;NocoDB is a free &amp;amp; open source Airtable alternative&lt;/a&gt; - that  turns your existing MySQL/Postgres databases into a smart and beautiful spreadsheets. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffv98dny7q93srxetpi7e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffv98dny7q93srxetpi7e.png" alt="NocoDB - The Open Source Airtable"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Now, show me the code!
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;server&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)();&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;nocodb&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;init&lt;/span&gt;&lt;span class="p"&gt;({}));&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Visit : localhost:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/dashboard`&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;    
    &lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})()&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Let's break down the 7 lines.
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;// require express &lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;server&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)();&lt;/span&gt;

    &lt;span class="c1"&gt;// require nocodb&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;nocodb&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

    &lt;span class="c1"&gt;// mount nocodb as a middleware&lt;/span&gt;
    &lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;init&lt;/span&gt;&lt;span class="p"&gt;({}));&lt;/span&gt;

    &lt;span class="c1"&gt;// print &lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Visit : localhost:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/dashboard`&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;    

    &lt;span class="c1"&gt;// listen to a port &lt;/span&gt;
    &lt;span class="nx"&gt;server&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})()&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Yes, that is it - simple, minimalistic &amp;amp; boring. Like the way it should be while trying something new. &lt;/p&gt;
&lt;h2&gt;
  
  
  How does it work internally ?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;NocoDB depends on a database to store metadata about projects or spreadsheets. This can be specified using

&lt;code&gt;NC_DB&lt;/code&gt;

environment variable. If

&lt;code&gt;NC_DB&lt;/code&gt;

is absent then NocoDB defaults to SQLite storing this metadata.
- NocoDB Projects can be created in two ways 
- First, on

&lt;code&gt;NC_DB&lt;/code&gt;

database itself. Second, by connecting to external database.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ttwudpcbfcxabia800t.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ttwudpcbfcxabia800t.png" alt="Screen Shot 2021-09-28 at 12.36.13"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  So how to try this quickly ?
&lt;/h2&gt;

&lt;p&gt;You can get started with just one command.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Where can I find more about the project ?
&lt;/h2&gt;

&lt;p&gt;Please find our github below -&amp;gt; you can &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;fork it&lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;star it&lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;twist it&lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;turn it&lt;/a&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjE4NDgsIm5iZiI6MTcyODkyMTU0OCwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE1NTkwOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc0ZmE1Y2VjOTJmYTk1ZTNjZDYyZjZkNGU3NDhlNTFkYWNkODM4YWM3NmQ3Njc4OGIzYTFhMTk4Zjc3ZmM2ZDAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.iYCaMtkfQ7qe_fcUEzahwdhjRxd6RLH6q2m1FpgKv8E"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjE4NDgsIm5iZiI6MTcyODkyMTU0OCwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE1NTkwOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc0ZmE1Y2VjOTJmYTk1ZTNjZDYyZjZkNGU3NDhlNTFkYWNkODM4YWM3NmQ3Njc4OGIzYTFhMTk4Zjc3ZmM2ZDAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.iYCaMtkfQ7qe_fcUEzahwdhjRxd6RLH6q2m1FpgKv8E" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  Excellent, so how to join NocoDB community ?
&lt;/h2&gt;

&lt;p&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;&lt;br&gt;
📣   Discord : &lt;a href="https://discord.gg/5RgZmkW" rel="noopener noreferrer"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;&lt;br&gt;
📣   Twitter : &lt;a href="https://twitter.com/nocodb" rel="noopener noreferrer"&gt;https://twitter.com/nocodb&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Also, do you have a video demo ?
&lt;/h2&gt;

&lt;p&gt;We do!&lt;/p&gt;
&lt;h3&gt;
  
  
  Using npx
&lt;/h3&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/K-UEecQyiOk"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Using docker
&lt;/h3&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/v6Nn75P1p7I"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Now, just happy hacking!&lt;/p&gt;

</description>
      <category>node</category>
      <category>database</category>
      <category>webdev</category>
    </item>
    <item>
      <title>How my open source project got angel investment from a user itself! 🎃</title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Wed, 22 Sep 2021 14:37:11 +0000</pubDate>
      <link>https://dev.to/o1lab/how-my-open-source-project-got-angel-investment-from-its-user-12dp</link>
      <guid>https://dev.to/o1lab/how-my-open-source-project-got-angel-investment-from-its-user-12dp</guid>
      <description>&lt;p&gt;Let's admit it, open source can be overwhelming when it comes to finding support financially.&lt;/p&gt;

&lt;p&gt;Today, I would like to share an unlikely journey of an open source project that evolved over the years and got a small angel investment from its user itself.&lt;/p&gt;

&lt;h2&gt;
  
  
  📙  Bit of project history
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;NocoDB is my open source project&lt;/a&gt; and it is an open source Airtable alternative. &lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODczNTQsIm5iZiI6MTcyODQ4NzA1NCwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTczNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWEwODY5MjRiMTQzYTY0ODE3ZDk5OWMzZWYzMzU4NmI5ODRmMzM4MjE1OGFmODkyZmJmYzM3NGYxNGNlYjU2OWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.88zxC_ivR4nILgjmEoXzKad2kBuyrQd2LOrBJ5CMZ8s"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODczNTQsIm5iZiI6MTcyODQ4NzA1NCwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTczNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWEwODY5MjRiMTQzYTY0ODE3ZDk5OWMzZWYzMzU4NmI5ODRmMzM4MjE1OGFmODkyZmJmYzM3NGYxNGNlYjU2OWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.88zxC_ivR4nILgjmEoXzKad2kBuyrQd2LOrBJ5CMZ8s" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;In its previous avatar NocoDB was known as &lt;a href="https://github.com/o1lab/xmysql" rel="noopener noreferrer"&gt;Xmysql&lt;/a&gt;: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Xmysql was a hobby project first &lt;a href="https://news.ycombinator.com/item?id=15580914" rel="noopener noreferrer"&gt;posted on HN&lt;/a&gt;. It created instant REST APIs on any MySQL database. Many people started to use it in production although it wasn't production ready which eventually made me to work on this full time.&lt;/li&gt;
&lt;li&gt;Over time, it evolved to create instant APIs over few more databases, along with a desktop app.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After talking to many customers, I started pivoting towards &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;NocoDB&lt;/a&gt; (a nocode/lowcode platform). One of the user - Vasyl, found our previous posts on Hacker News and contacted us to discuss an issue he was facing..&lt;/p&gt;

&lt;h2&gt;
  
  
  👋  First meeting with customer
&lt;/h2&gt;

&lt;p&gt;I was running late to the meeting by 4 minutes. &lt;/p&gt;

&lt;p&gt;I was frantically switching Chrome tabs...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mail. Click.&lt;/li&gt;
&lt;li&gt;Calendar. Click.&lt;/li&gt;
&lt;li&gt;Invitation. Click.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I joined the meeting with a sheepish grin, expressing my apologies for being late. &lt;/p&gt;

&lt;p&gt;This was my first meeting with Vasyl, Founder of Servired: a freight company that operates in Europe.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Quick intros were exchanged...&lt;/li&gt;
&lt;li&gt;Backgrounds of each other exchanged...&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📞  The conversation
&lt;/h2&gt;

&lt;p&gt;Vasyl proceeded to describe a UI issue that would occur while loading certain fields.&lt;/p&gt;

&lt;p&gt;I told Vasyl: &lt;em&gt;"Let's create a fresh project".&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;He then opened Evernote to look up his AWS database credentials.&lt;/p&gt;

&lt;p&gt;I ask him &lt;em&gt;"Where did you come across us?"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;He says &lt;em&gt;"I was googling : how to create REST APIs for mysql automatically and found you on Hacker News"&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;He then asked me for the price of our product.&lt;/p&gt;

&lt;p&gt;I say &lt;em&gt;"It's free &amp;amp; open source!".&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;He says &lt;em&gt;"Sorry, I don't get that?".&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I then checked to see whether he was unable to find the correct database credentials.&lt;/p&gt;

&lt;p&gt;He replies &lt;em&gt;"No no..I meant to ask, why is your product free? You can charge me hourly if you can sort this issue out!".&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I then said &lt;em&gt;"Let's have a look, must be a bug on our end...".&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  🚚   Business Problem
&lt;/h2&gt;

&lt;p&gt;Vasyl explained that his trucking industry has a massive problem... DUIs! If a truck driver involved in an accident is charged with DUI (Driving Under the Influence of alcohol), company cannot claim insurance and can go bankrupt! Several already are affected by this! One potential solution that he proposed was to make driver take breath checks during work (using a breathalyzer) and dump results to a cloud database powered by APIs. Company then monitors data for anamolies!&lt;/p&gt;

&lt;p&gt;While Vasyl is not a programmer, he learned many programming skills out of frustration to solve his own business problems without technical engineering support, all by himself. There is much to admire about him!&lt;/p&gt;

&lt;p&gt;I helped to sort out the UI issue he was facing. &lt;/p&gt;

&lt;p&gt;And importantly, also showed early &lt;em&gt;prototype of &lt;strong&gt;&lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;NocoDB&lt;/a&gt;&lt;/strong&gt;&lt;/em&gt; - he was thrilled to say the least! So, I gave him early access + my direct contact details for any help.&lt;/p&gt;

&lt;h2&gt;
  
  
  ⏰ Two hours after our meeting
&lt;/h2&gt;

&lt;p&gt;Vasyl ping'd me on Telegram, nothing tech this time. Instead, he asked if he could &lt;em&gt;make an investment&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;Woah! It was disbelief in a pleasant way. &lt;/p&gt;

&lt;p&gt;I confirm whether he wanted to invest personally or as part of a VC. It is very unusual for a customer to be your first investor. He then asked details about the minimum check size I would accept, and I mentioned &lt;em&gt;x&lt;/em&gt;. He wanted to put in &lt;em&gt;3x&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Another Zoom meeting. &lt;/p&gt;

&lt;p&gt;Again, switching tabs on my desktop. Then Chrome tabs. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mail. Click. &lt;/li&gt;
&lt;li&gt;Calendar. Click. &lt;/li&gt;
&lt;li&gt;Invitation. Click.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My first question : "What made him &lt;em&gt;want&lt;/em&gt; to invest?" &lt;/p&gt;

&lt;p&gt;He then told me how painful his problem is, in general. How treacherous his own journey has been to create a simple business solution. And countless hours he spent on internet. Lessons and expenditures from old IT projects. Outsourcing to companies. Working with freelancers. Code maintenance headaches. Endless meetings. &lt;br&gt;
He deeply understands IT solutions for non-IT folks is a costly affair. And he believed NocoDB in the hands of business owners could be a huge game changer. But hey, &lt;em&gt;thats usually my pitch&lt;/em&gt;. &lt;/p&gt;

&lt;p&gt;So we nod in unison. And we smile. We arrive at an agreement. Quick handshake. All done virtually.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvftnjj6e7lf0mf7v9smr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvftnjj6e7lf0mf7v9smr.png" alt="Screen Shot 2021-09-20 at 16.37.29"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  💰  Investment
&lt;/h2&gt;

&lt;p&gt;I am based in the UK. Early on, I discovered that &lt;a href="https://seedlegals.com" rel="noopener noreferrer"&gt;SeedLegals&lt;/a&gt; makes it really simple to take investments for a new startup. For this angel investment, I used ASA/SeedFAST (equivalent to the Y Combinator SAFE in the US). These documents are well templated and assisted throughout by SeedLegals. However, SeedLegals takes a 1% cut on each transaction... too pricey!! This has to change for the better in the UK.&lt;/p&gt;
&lt;h2&gt;
  
  
  📢  Announcing to the team 🙌
&lt;/h2&gt;

&lt;p&gt;One week later, I get a mobile notification that the investment has arrived. &lt;/p&gt;

&lt;p&gt;First, I went to announce this to the youngest member of our team. She was looking at a Muhammad Ali's poster in the room...shadow boxing (almost)! I announced to her that we got our first angel check! She was still shadow boxing... I say, "Time for a picture!"... She doesn't say much.&lt;/p&gt;

&lt;p&gt;Anyways, I go ahead to take a picture and there she is captured giving a right cross to her own cheek. She looks at me and smiles. With her, a small team smiles. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F5435402%2F134030709-869649e9-1553-45d9-8ea3-22d1f426a89d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F5435402%2F134030709-869649e9-1553-45d9-8ea3-22d1f426a89d.png" alt="Screen Shot 2021-09-20 at 16 37 29"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;👶 That's my daughter Gia, 3 months old, caught giving a right cross to her self!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And our journey continues. Helping one developer, one entrepreneur and one thinker at a time...&lt;/p&gt;


&lt;h3&gt;
  
  
  PS :
&lt;/h3&gt;

&lt;p&gt;Getting started with NocoDB is simple :&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx create-nocodb-app nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; nocodb &lt;span class="nt"&gt;-p&lt;/span&gt; 8080:8080 nocodb/nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;NocoDB just went past 2+ Million Docker downloads within just 15 weeks into the launch. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Please star/watch us on Github for future updates&lt;/em&gt;&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODczNTUsIm5iZiI6MTcyODQ4NzA1NSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTczNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJhN2IzYTJhZjI5MWU1ODhmNTZkNGVmMmZlZDc3OWU3NTA4YjIyMGFhM2Q1MzFkMmU1M2I1MmVjZDY3NjY2Y2QmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Wqu45GpqQw3cUuvC5YtVQLuOYVtNeOHEHdbnC4Fbbx4"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg0ODczNTUsIm5iZiI6MTcyODQ4NzA1NSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMDklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDA5VDE1MTczNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTJhN2IzYTJhZjI5MWU1ODhmNTZkNGVmMmZlZDc3OWU3NTA4YjIyMGFhM2Q1MzFkMmU1M2I1MmVjZDY3NjY2Y2QmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.Wqu45GpqQw3cUuvC5YtVQLuOYVtNeOHEHdbnC4Fbbx4" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;And join our thriving community at :&lt;br&gt;
📣   Github : &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;&lt;br&gt;
📣   Discord : &lt;a href="https://discord.gg/5RgZmkW" rel="noopener noreferrer"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;&lt;br&gt;
📣   Twitter : &lt;a href="https://twitter.com/nocodb" rel="noopener noreferrer"&gt;https://twitter.com/nocodb&lt;/a&gt;&lt;/p&gt;

</description>
      <category>news</category>
      <category>webdev</category>
      <category>database</category>
      <category>hacktoberfest</category>
    </item>
    <item>
      <title>NocoDB : The Open Source Airtable Alternative</title>
      <dc:creator>o1lab</dc:creator>
      <pubDate>Tue, 20 Jul 2021 17:27:19 +0000</pubDate>
      <link>https://dev.to/o1lab/nocodb-the-open-source-airtable-alternative-18h2</link>
      <guid>https://dev.to/o1lab/nocodb-the-open-source-airtable-alternative-18h2</guid>
      <description>&lt;h1&gt;
  
  
  &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;&lt;strong&gt;NocoDB&lt;/strong&gt;&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;Hey Everybody 👋 👋&lt;/p&gt;

&lt;p&gt;We are really excited to show &lt;a href="https://nocodb.com" rel="noopener noreferrer"&gt;NocoDB&lt;/a&gt; on Dev.to forum today. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;&lt;strong&gt;NocoDB is a free &amp;amp; open source Airtable alternative.&lt;/strong&gt;&lt;/a&gt; &lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjIwMzEsIm5iZiI6MTcyODkyMTczMSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE2MDIxMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjOWM3ZGM5MzEyODk2NWNkYzkwNjY5YjA3NjBkZDY4ZDkwMTgwNzJkZTEyNTdjNTRmN2U3MzQxYWIzZWU0MjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ZKk2KwVUDKqp7ayeJXLa-KgThlZcoFXOYXC489i6eo4"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjIwMzEsIm5iZiI6MTcyODkyMTczMSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE2MDIxMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjOWM3ZGM5MzEyODk2NWNkYzkwNjY5YjA3NjBkZDY4ZDkwMTgwNzJkZTEyNTdjNTRmN2U3MzQxYWIzZWU0MjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ZKk2KwVUDKqp7ayeJXLa-KgThlZcoFXOYXC489i6eo4" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  &lt;a href="https://www.producthunt.com/posts/nocodb/" rel="noopener noreferrer"&gt;Just six weeks ago&lt;/a&gt; we launched NocoDB and NocoDB now has :
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;660,000+ Docker downloads!&lt;/li&gt;
&lt;li&gt;13,600+ Github stars! 💫 💫 💫 &lt;/li&gt;
&lt;li&gt;1,100+ strong discord community!&lt;/li&gt;
&lt;li&gt;And by &lt;a href="https://runacap.com/" rel="noopener noreferrer"&gt;Runa Capital's&lt;/a&gt; analysis, NocoDB has been the &lt;a href="https://runacap.com/ross-index/q2-2021/" rel="noopener noreferrer"&gt;fastest growing open source project&lt;/a&gt; for Q2.&lt;/li&gt;
&lt;li&gt;Evan You - Creator of Vue.js also tweeted about us! 🎉🎉🎉🎉
&lt;iframe class="tweet-embed" id="tweet-1399345926884532224-154" src="https://platform.twitter.com/embed/Tweet.html?id=1399345926884532224"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1399345926884532224-154');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1399345926884532224&amp;amp;theme=dark"
  }



&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Did we anticipate this coming ? &lt;br&gt;
Surely not. And as like many of you tinkerers, we were curious-anxious going into launch day. However, we are totally overwhelmed by the response of community. And would love to share more on the product &amp;amp; the journey here in Dev.to&lt;/p&gt;
&lt;h1&gt;
  
  
  How it works
&lt;/h1&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker run -p 8080:8080 nocodb/nocodb
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-nocodb-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;NocoDB simply works by connecting to your existing databases and transforming them into a smart spreadsheet interface! This allows you to collaborate just like google/airtable spreadsheets with your teams. And we also allow programmatic access to theses spreadsheet with REST &amp;amp; GraphQL APIs!&lt;/p&gt;

&lt;p&gt;NocoDB currently works with &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;MySQL &lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;Microsoft SQL Server&lt;/li&gt;
&lt;li&gt;SQLite&lt;/li&gt;
&lt;li&gt;Amazon Aurora &amp;amp; MariaDB databases.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxw4ffyp96ydvp0s0fpxk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxw4ffyp96ydvp0s0fpxk.png" alt="NocoDB: Gallery View"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkisqg2o1f075w7rn0so3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkisqg2o1f075w7rn0so3.png" alt="NocoDB: app store "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc9nz0987bww8o5yi1o7d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc9nz0987bww8o5yi1o7d.png" alt="NocoDB: programmatic API access "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ogsaes3fb0xyqmlxlfj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5ogsaes3fb0xyqmlxlfj.png" alt="NocoDB: Collaborative spreadsheet"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2krutazl9td985wd26h4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2krutazl9td985wd26h4.png" alt="NocoDB : Integrate with zapier"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email &amp;amp; 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.&lt;/p&gt;


&lt;h1&gt;
  
  
  FEATURES :
&lt;/h1&gt;
&lt;h4&gt;
  
  
  Rich Spreadsheet Interface :
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;⚡ Sort, search, filter, hide columns with ease&lt;/li&gt;
&lt;li&gt;⚡ Create Views : Grid, Gallery, Kanban, Gantt, Form&lt;/li&gt;
&lt;li&gt;⚡ Share Views : public &amp;amp; password protected&lt;/li&gt;
&lt;li&gt;⚡ Personal &amp;amp; locked Views&lt;/li&gt;
&lt;li&gt;⚡ Upload images to cells (Works with S3, Minio, GCP, Azure &amp;amp; many more)!!&lt;/li&gt;
&lt;li&gt;⚡ Roles : Owner, Creator, Editor, Commenter, Viewer, Commenter, Custom.&lt;/li&gt;
&lt;li&gt;⚡ Access Control : Fine-grained access control even to column level.&lt;/li&gt;
&lt;li&gt;⚡ API tokens to integrate with n8n, Zapier &amp;amp; Integromat.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
  
  
  Automations &amp;amp; App store :
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;⚡ Chat : Microsoft Teams, Slack, Discord, Mattermost&lt;/li&gt;
&lt;li&gt;⚡ Email : SMTP, SES, Mailchimp&lt;/li&gt;
&lt;li&gt;⚡ SMS : Twilio&lt;/li&gt;
&lt;li&gt;⚡ Whatsapp&lt;/li&gt;
&lt;li&gt;⚡ Any 3rd Party APIs&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
  
  
  Programmatic API access via :
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;⚡ REST APIs (Swagger)&lt;/li&gt;
&lt;li&gt;⚡ GraphQL APIs.&lt;/li&gt;
&lt;li&gt;⚡ Includes JWT Authentication &amp;amp; Social Auth&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;
  
  
  Please join our community
&lt;/h1&gt;

&lt;p&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;&lt;br&gt;
📣   Discord : &lt;a href="https://discord.gg/5RgZmkW" rel="noopener noreferrer"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;&lt;br&gt;
📣   Twitter : &lt;a href="https://twitter.com/nocodb" rel="noopener noreferrer"&gt;https://twitter.com/nocodb&lt;/a&gt;&lt;/p&gt;


&lt;h1&gt;
  
  
  🔦  NocoDB's journey so far..
&lt;/h1&gt;

&lt;p&gt;We open sourced two API solutions before NocoDB :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⚡ A no-code &lt;a href="https://github.com/o1lab/xmysql" rel="noopener noreferrer"&gt;REST APIs&lt;/a&gt; generator for any MySQL DB. ~4000+ Github Stars. This was a hobby project &amp;amp; had no GUI. 📈&lt;/li&gt;
&lt;li&gt;⚡ A low-code &lt;a href="https://github.com/xgenecloud/xgenecloud" rel="noopener noreferrer"&gt;REST-GraphQL APIs generator&lt;/a&gt; for any database with GUI. Used by 100s of companies. Including fortune 500s &amp;amp; publicly trading companies. 📈&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The thing that surprised us the most was that even non-developers started using our API products &amp;amp; rooting for us. 🚀 🚀  .. This made us to rethink &amp;amp; combine the power of our 2 API products then transform them into something better.&lt;/p&gt;


&lt;h1&gt;
  
  
  🎯  Why we building this ?
&lt;/h1&gt;

&lt;p&gt;Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by a hundreds of millions humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings has meant horrible access controls, vendor lockin, data lockin, abrupt price changes &amp;amp; most importantly a glass ceiling on what's possible in future.&lt;/p&gt;
&lt;h1&gt;
  
  
  ❤️   Our Mission :
&lt;/h1&gt;

&lt;p&gt;Our mission is to provide the most powerful no-code interface for databases which is open source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on internet.&lt;/p&gt;


&lt;h3&gt;
  
  
  💊  And.. There is.. One last thing.. this makes it insanely good :
&lt;/h3&gt;

&lt;p&gt;NocoDB can be run from a single node.js file with just SIX lines of code in it! This minimalism means NocoDB runs even on the smallest of servers. Not just AWS, DigitalOcean, Heroku but also in A2Hosting &amp;amp; similar.&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;async &lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)();&lt;/span&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;nocodb&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;Noco&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;init&lt;/span&gt;&lt;span class="p"&gt;({}));&lt;/span&gt;
    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Visit : localhost:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/dashboard`&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;    
    &lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;process&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;env&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Hope you loved it. ❤️&lt;/p&gt;


&lt;h1&gt;
  
  
  Please join our community at :
&lt;/h1&gt;

&lt;p&gt;📣   Github : &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;https://github.com/nocodb/nocodb&lt;/a&gt;&lt;br&gt;
📣   Discord : &lt;a href="https://discord.gg/5RgZmkW" rel="noopener noreferrer"&gt;https://discord.gg/5RgZmkW&lt;/a&gt;&lt;br&gt;
📣   Twitter : &lt;a href="https://twitter.com/nocodb" rel="noopener noreferrer"&gt;https://twitter.com/nocodb&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Would love to hear your usecases &amp;amp; feedbacks. 🙌&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt; / &lt;a href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;
        nocodb
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      🔥 🔥 🔥 Open Source Airtable Alternative
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;
    &lt;div&gt;
        &lt;a href="https://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;
            &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fgithub.com%2Fnocodb%2Fnocodb%2Fpackages%2Fnc-gui%2Fassets%2Fimg%2Ficons%2F512x512.png" width="80"&gt;
            &lt;br&gt;
            NocoDB
        &lt;/a&gt;
    &lt;/div&gt;
    The Open Source Airtable Alternative &lt;br&gt;
&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;
NocoDB is the fastest and easiest way to build databases online
&lt;/p&gt;

&lt;p&gt;
    &lt;a href="http://www.nocodb.com" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Website&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Discord&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://community.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Community&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://twitter.com/nocodb" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Twitter&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://www.reddit.com/r/NocoDB/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Reddit&lt;/b&gt;&lt;/a&gt; •
    &lt;a href="https://docs.nocodb.com/" rel="nofollow noopener noreferrer"&gt;&lt;b&gt;Documentation&lt;/b&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://private-user-images.githubusercontent.com/86527202/277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjIwMzEsIm5iZiI6MTcyODkyMTczMSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE2MDIxMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjOWM3ZGM5MzEyODk2NWNkYzkwNjY5YjA3NjBkZDY4ZDkwMTgwNzJkZTEyNTdjNTRmN2U3MzQxYWIzZWU0MjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ZKk2KwVUDKqp7ayeJXLa-KgThlZcoFXOYXC489i6eo4"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fprivate-user-images.githubusercontent.com%2F86527202%2F277104231-e2fad786-f211-4dcb-9bd3-aaece83a6783.gif%3Fjwt%3DeyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mjg5MjIwMzEsIm5iZiI6MTcyODkyMTczMSwicGF0aCI6Ii84NjUyNzIwMi8yNzcxMDQyMzEtZTJmYWQ3ODYtZjIxMS00ZGNiLTliZDMtYWFlY2U4M2E2NzgzLmdpZj9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDEwMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQxMDE0VDE2MDIxMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRjOWM3ZGM5MzEyODk2NWNkYzkwNjY5YjA3NjBkZDY4ZDkwMTgwNzJkZTEyNTdjNTRmN2U3MzQxYWIzZWU0MjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.ZKk2KwVUDKqp7ayeJXLa-KgThlZcoFXOYXC489i6eo4" alt="video avi"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div&gt;
&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/chinese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263434-75fe793d-42af-49e4-b964-d70920e41655.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/french.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263474-787d71e7-3a87-42a8-92a8-be1d1f55413d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/german.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263531-fae58600-6616-4b43-95a0-5891019dd35d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/spanish.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263589-3dbeda9a-0d2e-4bbd-b1fc-691404bb74fb.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/portuguese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263669-f567196a-d4e8-4143-a80a-93d3be32ba90.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/italian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263707-ba4e04a4-268a-4626-91b8-048e572fd9f6.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/japanese.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263770-38e3e79d-11d4-472e-ac27-ae0f17cf65c4.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/korean.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263822-28fce9de-915a-44dc-962d-7a61d340e91d.png"&gt;&lt;/a&gt;
&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/russian.md" rel="noopener noreferrer"&gt;&lt;img height="38" src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F61551451%2F135263888-151d4ad1-7084-4943-97c9-56f28cd40b80.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodbmarkdown/readme/languages/README.md" rel="noopener noreferrer"&gt;&lt;b&gt;See other languages »&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;img src="https://camo.githubusercontent.com/5bb6b9c85c0558b777a97f63321d49cf9d2e226d5545a9587ea5ff6761f741ac/68747470733a2f2f7374617469632e73636172662e73682f612e706e673f782d707869643d63313261373763632d383535652d343630322d386130662d363134623264306461353661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Join Our Community&lt;/h1&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a href="https://discord.gg/5RgZmkW" rel="nofollow noopener noreferrer"&gt;&lt;br&gt;
&lt;img src="https://camo.githubusercontent.com/582789d21cacf66e79561eff1f68c38c804c707f14331d30ed873859e0327b0f/68747470733a2f2f646973636f72646170702e636f6d2f6170692f6775696c64732f3636313930353435353839343838383439302f7769646765742e706e673f7374796c653d62616e6e657233" alt=""&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/nocodb/nocodb/stargazers" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/f662f45e217ab8913412d63012dc6a22b1646f39ff7f627e33196e13bf476853/687474703a2f2f7265706f726f737465722e636f6d2f73746172732f6e6f636f64622f6e6f636f6462" alt="Stargazers repo roster for @nocodb/nocodb"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Installation&lt;/h1&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with SQLite&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Docker with PG&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;docker run -d --name noco 
           -v &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;$(&lt;/span&gt;pwd&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;/nocodb:/usr/app/data/ 
           -p 8080:8080 
            &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with your pg connection string&lt;/span&gt;
           -e NC_DB=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;pg://host.docker.internal:5432?u=root&amp;amp;p=password&amp;amp;d=d1&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt; 
           &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; replace with a random secret&lt;/span&gt;
           -e NC_AUTH_JWT_SECRET=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;569a1821-0a93-45e8-87ab-eb857f20a010&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;  
           nocodb/nocodb:latest&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Auto-upstall&lt;/h2&gt;

&lt;/div&gt;

&lt;p&gt;Auto-upstall is a single command that sets up NocoDB on a server for production usage.
Behind the scenes it auto-generates docker-compose for you.&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;bash &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;curl -sSL http://install.nocodb.com/noco.sh&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;&amp;lt;(&lt;/span&gt;mktemp&lt;span class="pl-pds"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Auto-upstall does the following : 🕊&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🐳 Automatically installs all pre-requisites like docker, docker-compose&lt;/li&gt;
&lt;li&gt;🚀 Automatically installs NocoDB with PostgreSQL, Redis, Minio…&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/nocodb/nocodb" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Happy Tinkering,&lt;br&gt;
Team NocoDB&lt;/p&gt;


&lt;div class="ltag__user ltag__user__id__206222"&gt;
    &lt;a href="/o1lab" class="ltag__user__link profile-image-link"&gt;
      &lt;div class="ltag__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F206222%2F5509d01b-ef50-45c1-ad05-d67b50690a29.png" alt="o1lab image"&gt;
      &lt;/div&gt;
    &lt;/a&gt;
  &lt;div class="ltag__user__content"&gt;
    &lt;h2&gt;
&lt;a class="ltag__user__link" href="/o1lab"&gt;o1lab&lt;/a&gt;Follow
&lt;/h2&gt;
    &lt;div class="ltag__user__summary"&gt;
      &lt;a class="ltag__user__link" href="/o1lab"&gt;NocoDB : Open Source Airtable alternative.&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;div class="ltag__user ltag__user__id__670698"&gt;
    &lt;a href="/pranavcbalan" class="ltag__user__link profile-image-link"&gt;
      &lt;div class="ltag__user__pic"&gt;
        &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F670698%2Fb74ffc59-5da2-4d8e-8099-41dbac471c50.jpeg" alt="pranavcbalan image"&gt;
      &lt;/div&gt;
    &lt;/a&gt;
  &lt;div class="ltag__user__content"&gt;
    &lt;h2&gt;
&lt;a class="ltag__user__link" href="/pranavcbalan"&gt;Pranav C&lt;/a&gt;Follow
&lt;/h2&gt;
    &lt;div class="ltag__user__summary"&gt;
      &lt;a class="ltag__user__link" href="/pranavcbalan"&gt;&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>typescript</category>
      <category>vue</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
