You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Firestore-like NoSQL database console called PostBase, with a strict black-and-white, squared-edge UI built using shadcn/ui components. Users can browse collections, view/edit/delete documents in a table, configure security rules, and interact via an SDK API.
Architecture
graph TD
A[Browser UI] --> B[Next.js App Router]
B --> C[API Routes]
C --> D[MongoDB]
C --> E[Security Rules Engine]
E --> D
F[External SDK] --> G[POST /api/sdk]
G --> E
Loading
Features
1. Document Field Builder & ID Generator
Fully typed document editor replaces raw JSON.
Supports adding arrays, objects (maps), strings, numbers, booleans, and nulls.
Documents can have an auto-generated UUID or a user-specified custom unique ID (_id).
2. Subcollections Support (users/123/posts)
The Next.js API Routes use query parameters (/api/documents?collection=users/123/posts) to gracefully handle slashes natively without fighting Next.js App Router Catch-all constraints.
Visual Hierarchy matches Firestore: The sidebar only shows root collections, while navigating into a document's details panel shows a nested graphical list of its subcollections.
Breadcrumb navigation rendered in the toolbar to quickly jump back to parent collections from deep subcollections.
Seamless creation logic for adding nested collections directly to a document.
3. API & SDK Ecosystem
A fully functional REST API allowing full CRUD on collections, subcollections, and documents.
Detailed Security Rules to authorize requests dynamically evaluating rule statements like auth != null.
Fully documented SDK interface right in the UI to give examples natively.
How to Run
Start MongoDB (must be running on localhost:27017, or set MONGODB_URI env var). By default, assuming local instance.
Install dependencies with pnpm install if not already installed.
Start the application: pnpm dev — starts Next.js dev server on http://localhost:3000
Create collections from the sidebar, add documents, configure security rules.
Use the SDK endpoint at POST /api/sdk for programmatic access.