Free for now while in alpha pre-release-candidate phase
Home/Documentation

Changelog

What we shipped, day by day.

Feb 26

Honesty day

We went through every page on the site — pricing, billing, all seven competitor comparisons, the landing page, about page, privacy policy, and terms — and removed every claim we couldn't back up with actual code. Turns out there were a lot of them.

The pricing page used to say “Unlimited Records” and “10GB Storage” for Pro. In reality, Pro has a 100,000 document limit and we don't track storage at all. We also claimed “Dedicated Infrastructure”, “Custom Domains & SSL”, and “Priority 24/7 Support” — none of which exist. Those are gone now. The pricing page shows what you actually get, and it's still a strong offering.

The comparison pages all claimed “150+ edge nodes” and “sub-20ms latency”. We use Cloudflare's CDN, which is great, but it's not our own edge network. Fixed. We also realized the comparisons were saying we have no real-time support, but we actually do — SSE change streams have been shipping since Phase 4. Updated those too.

The privacy policy and terms both referenced “SQLCipher with AES-256 encryption”. Our database is CouchDB, not SQLite. SQLCipher literally doesn't apply. We rewrote the encryption sections to accurately describe what we actually do: HTTPS/TLS via Cloudflare, SQLite for auth sessions, CouchDB on encrypted volumes.

Added a GDPR cookie consent banner. Google Analytics was loading without asking — not great for an EU-based company. Now GA only loads if you click Accept. Your dashboard was already tracking-free and still is.

Created a single source of truth for all product features (src/lib/features.ts) so pricing, billing, and comparison pages can never drift from the actual plan limits again. Also bumped the free tier API key limit from 1 to 2, because having one key for dev and one for prod just makes more sense.

Fixed the landing page stats bar (was claiming 2.4 billion JSON objects and 99.99% uptime), the about page (AES-256 and edge network claims), the OG image, and llms.txt. Updated CLAUDE.md and README. Replaced every Vercel reference with our actual stack: Dokploy + Cloudflare.

Also hid the testimonials section. They were fake. We'll bring it back when we have real feedback from real users.

Feb 25

Auth rewrite and production prep

Big day. Ripped out Clerk entirely and replaced it with better-auth using magic links via Resend. No more third-party auth dependency — sessions live in a local SQLite database now. Every auth touchpoint changed: middleware, login, signup, settings, billing, the user menu, everything. Added Google and GitHub OAuth as optional login methods.

Set up api.jsondb.cloud as the primary API domain with middleware rewrites so the public API has its own clean subdomain. Renamed “namespace” to “project” everywhere and added auto-creation of a default project on signup so new users can start making API calls immediately.

Shipped production launch prep: SEO meta tags, structured data, error pages (404, 500), Google Analytics (public pages only), security headers, sitemap, robots.txt. Added the open-source page with package badges, llms.txt and llms-full.txt for AI discoverability.

Extracted all standalone packages (JS SDK, Python SDK, CLI, MCP server) to their own repos under the JsonDBCloud GitHub org. The MCP server shipped with 27 tools covering full CRUD, querying, schemas, webhooks, versions, import/export, and change streams.

Renamed internal _meta fields to $-prefix for CouchDB compatibility and fixed a handful of deployment issues — OG image rendering, auth cookie prefixes for HTTPS, Polar plugin initialization.

Feb 24

The big build

This is the day most of the product was built. Started by migrating the backend from a .NET prototype to Apache CouchDB with the nano library. Then implemented all four phases back to back.

Phase 1 (Foundation) and Phase 2 (Developer Experience) landed together: full CRUD API with PATCH support (both RFC 7396 Merge Patch and RFC 6902 JSON Patch), bulk operations, querying with filters/sort/pagination/field selection, schema validation via JSON Schema, API key scoping and rate limiting, the JavaScript SDK with TypeScript generics and a query builder, billing integration via Polar.sh, and the documentation site with interactive API explorer.

Phase 3 (Differentiation) added webhooks with HMAC-SHA256 signatures and delivery retries, document version history with diff and restore, and CSV/JSON/NDJSON import and export. Phase 4 (Moat) brought SSE change streams for real-time updates, team sharing with role-based access control, an MCP server for AI agent integration, the Python SDK, the CLI tool, and competitor comparison pages.

Also migrated auth from Clerk to better-auth in the same day — swapped the middleware, login/signup forms, user menu, settings, and billing pages. Added 111 unit tests with Vitest and a Playwright E2E test suite covering navigation, docs, dashboard, and cross-linking. Did a full UI/UX audit to fix broken navigation and add missing pages.

Wrote 17 detailed feature specs and a strategic roadmap based on competitor research (Firebase, Supabase, MongoDB Atlas, Upstash, JSONBin, RestDB, npoint). The competitor analysis shaped the product positioning: simpler than Firebase, cheaper than Supabase, less ops than MongoDB Atlas.

Feb 23

Design and identity

Designed the visual identity: amber/orange CRT-inspired color palette, the {>_} text logo, favicons and apple-touch-icon, custom superscript styling for the “.cloud” suffix. Built the full frontend from HTML design mockups — landing page, dashboard layout, all static pages. Added privacy policy and terms of service. Integrated Clerk for initial auth.

Feb 22

Day zero

Created the Next.js project and scaffolded the initial SaaS dashboard structure. App Router, TypeScript, Tailwind CSS. The very first commit.