sadmann7/tablecn
sadmann7/tablecn has 6,377 GitHub stars and 563 forks. GitHot measured +2 stars in 24 hours and +11 in 7 days. Last checked 2026-11-05 20:09 UTC. Last push 2026-11-02.
Data table and data grid components built with shadcn/ui, featuring sorting, filtering, pagination, infinite scrolling, and real-time collaboration.
What you can do
- Server-side pagination, sorting, and filtering
- Customizable columns
- Auto generated filters from column definitions
- Notion/Airtable like advanced filtering
Measured star growth
- in 24h
- +2
- in 7 days
- +11
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Originaltablecn
Data table and data grid components built with shadcn/ui, featuring sorting, filtering, pagination, infinite scrolling, and real-time collaboration.
Documentation
See the documentation to get started.
Tech Stack
- Framework: Next.js
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Table: TanStack Table
- Reactive store: TanStack DB
- Database: PostgreSQL
- ORM: Drizzle ORM
- Validation: Zod
- Multiplayer: PartyServer on Cloudflare Durable Objects
Features
- Server-side pagination, sorting, and filtering
- Customizable columns
- Auto generated filters from column definitions
-
Notion/Airtablelike advanced filtering -
Linearlike filter menu for command palette filtering - Action bar on row selection
- Infinite scrolling with virtualization
- Real-time collaboration
Running Locally
Quick Setup (with Docker)
Clone the repository
git clone https://github.com/sadmann7/tablecn cd tablecnCopy the environment variables
cp .env.example .envRun the setup
pnpm ollieThis installs dependencies, starts the Docker PostgreSQL instance, pushes the schema, and seeds sample data.
Manual Setup
Clone the repository
git clone https://github.com/sadmann7/tablecn cd tablecnInstall dependencies
pnpm installSet up environment variables
cp .env.example .envUpdate
.envwith your database credentials.Start the database and dev server
pnpm db:start # start the PostgreSQL container pnpm db:setup # push schema and seed data pnpm dev # start the Next.js dev server
Multiplayer
To run the multiplayer demo locally:
pnpm dev:multiplayer
This starts the Next.js dev server and the PartyServer worker (via wrangler dev) concurrently. Each room keeps its rows in its Durable Object's storage and seeds them the first time it's opened, so no database is needed.
Rooms are temporary: each one resets to fresh seed rows 10 minutes after its last user leaves. When two people edit the same cell at once, the last write wins.
Deployment
Follow the deployment guides for Vercel, Netlify, and Docker.
The multiplayer demo runs on PartyServer as a Cloudflare Worker with Durable Objects, deployed separately to your Cloudflare account:
pnpm deploy:multiplayer
Set NEXT_PUBLIC_PARTYKIT_HOST in your deployment environment variables to the worker's host (for example tablecn.<your-subdomain>.workers.dev) after deploying.
Credits
- shadcn/ui - For the initial implementation of the data table.
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
458,610 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
376,969 starsreact/react
The library for web and native user interfaces.
252,010 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,503 stars