MCPSERV.CLUB
NocoDB

NocoDB

Self-Hosted

Build databases like spreadsheets, no code required

Active(100)
58.4kstars
1views
Updated 13 hours ago
NocoDB screenshot 1
1 / 5

Overview

Discover what makes NocoDB powerful

NocoDB is a self‑hosted, open‑source platform that transforms any relational database into a spreadsheet‑like interface. It exposes the underlying tables as *Sheets*, providing CRUD operations, data validation, and a variety of views (grid, Kanban, gallery, form) that can be embedded or interacted with via a web UI. For developers, the value lies in its ability to bridge the gap between traditional SQL backends and modern low‑code front‑ends without compromising on performance or extensibility.

Database agnostic

Rich API surface

Customizable views

Permission model

Overview

NocoDB is a self‑hosted, open‑source platform that transforms any relational database into a spreadsheet‑like interface. It exposes the underlying tables as Sheets, providing CRUD operations, data validation, and a variety of views (grid, Kanban, gallery, form) that can be embedded or interacted with via a web UI. For developers, the value lies in its ability to bridge the gap between traditional SQL backends and modern low‑code front‑ends without compromising on performance or extensibility.

Key Features

  • Database agnostic – Connect to PostgreSQL, MySQL, MariaDB, SQLite, or Microsoft SQL Server; the engine auto‑detects schema and creates corresponding sheets.
  • Rich API surface – RESTful endpoints for rows, tables, and file uploads, plus a GraphQL layer that mirrors the database schema. Webhooks can be configured to trigger on CRUD events.
  • Customizable views – Developers can define new view types or extend existing ones through the plugin system, allowing tailored UIs for specific workflows.
  • Permission model – Fine‑grained role‑based access control, including row‑level security via SQL expressions.

Technical Stack

  • Frontend – Built with Vue 3 and TypeScript, leveraging Vite for fast dev builds. The UI is a single‑page application that communicates with the backend via Axios.
  • Backend – Node.js (Express) written in TypeScript, using Prisma as the ORM layer. Prisma abstracts database differences and generates type‑safe query APIs.
  • Database – Any of the supported relational engines; Prisma’s schema file (schema.prisma) is used to generate migration files.
  • Containerization – Docker images are available for quick deployment; the image includes both frontend and backend, exposing port 8080. Docker Compose examples show mounting a data directory for persistence.

Core Capabilities

  • API‑first – Every CRUD operation is exposed through a REST endpoint (/api/v1/tables/:id/rows) and a GraphQL schema that mirrors the database. This makes it trivial to integrate with existing services or build custom dashboards.
  • File handling – Supports file uploads, storage in the same database or external services (S3, MinIO) via configurable adapters.
  • Extensibility – A plugin SDK lets developers add new actions, connectors, or UI widgets. The open‑source repo encourages community contributions and quick iteration.

Deployment & Infrastructure

  • Self‑hosting – No cloud dependency; run on any Linux server, VM, or Kubernetes cluster. The Docker image can be scaled horizontally behind a load balancer; the backend is stateless, and session data is JWT‑based.
  • Scalability – Prisma’s connection pooling and the underlying database’s scaling capabilities allow handling millions of rows. For large workloads, use a dedicated PostgreSQL instance and increase the pool size in prisma.schema.
  • Observability – Built‑in metrics (Prometheus exporter) and structured logging enable integration with ELK or Loki stacks.

Integration & Extensibility

  • Webhooks – Trigger external services on row creation, update, or deletion.
  • OAuth & SSO – Supports Google, Azure AD, and generic OAuth providers for authentication.
  • CLI & SDKs – A Node.js SDK auto‑generates types from the GraphQL schema, simplifying client integration.

Developer Experience

  • Configuration – Environment variables (NC_DB, NC_AUTH_JWT_SECRET) control database connections and security. The UI exposes a settings panel for runtime tweaks.
  • Documentation – Comprehensive docs cover API reference, plugin development guide, and deployment scenarios. The community forum and Discord channel provide rapid support.
  • Testing – The repo includes Jest tests for backend logic and Cypress end‑to‑end scenarios, encouraging CI pipelines.

Use Cases

  1. Rapid prototyping – Build a data‑intensive application without writing boilerplate CRUD code; expose the sheet to stakeholders for instant feedback.
  2. Data migration – Connect an existing PostgreSQL database, view tables as sheets, and export/import via CSV or API for migration to another system.
  3. Embedded dashboards – Use the REST/GraphQL APIs to feed data into a custom React or Angular dashboard while keeping NocoDB as the source of truth.
  4. Workflow automation – Combine Kanban views with webhooks to trigger downstream processes (e.g., send Slack notifications when a row moves to “Approved”).

Advantages

  • Performance – Prisma’s query engine and index‑based queries keep latency low even with large datasets.
  • Flexibility – No-code UI for non‑technical users, but developers retain full control via APIs and plugins.
  • Licensing – MIT‑licensed, allowing commercial use without subscription fees or vendor lock‑in.
  • Community – Active GitHub repo, frequent releases, and a growing ecosystem of plugins.

In summary, NocoDB offers developers a powerful bridge between relational databases and modern UI paradigms. Its clean TypeScript codebase, robust API surface, and container‑friendly deployment make it an attractive choice for building data‑centric applications that require both developer agility and end‑user friendliness.

Open SourceReady to get started?

Join the community and start self-hosting NocoDB today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
databases
License
AGPL-3.0
Stars
58.4k
Technical Specs
Pricing
Open Source
Database
Multiple
Docker
Official
Min RAM
1GB
Min Storage
5GB
Supported OS
LinuxDocker
Author
nocodb
nocodb
Last Updated
13 hours ago