Where we are today
v3.05 → v4.0 — Migration underway
Moving to a real database
A complete personal knowledge tool with 1,330+ bookmarks, now mid-migration from Google Sheets to Supabase (Postgres). Running in dual-mode — both backends live, switchable instantly — while the new foundation is proven.
Bookmarks Notes Snippets Analytics Smart collections Pinned bookmarks Drag to reorder Photo theme 3 themes iOS PWA Bookmarklet Chrome JSON import Pocket CSV import Bulk edit Tag suggestions Random sort Google OAuth Dark mode
The road ahead
v3.x
Done
Stabilization & Polish
Core reliability work — taming the sync layer so the same bookmark set holds steady across three devices used all day. With sync solid, the project jumped early into the v4.0 database migration rather than finishing every cosmetic pass first.
v3.1
Done
Sync Stability
Solved the recurring duplicate-bookmark bug with a layered fix: debounced writes, a unique sync ID to reject stale chunks, a write lock, and a cooldown that blocks auto-refresh mid-write. Confirmed steady across all three devices.
debounced sync sync-id verification write lock + cooldown duplicate bug resolved
v3.2
Folded into v4.0
Bookmarklet Overhaul
Rather than polish the old Google Apps Script bookmarklet, it was rebuilt directly on the new backend — eliminating the auth-redirect problem entirely. Auto-fills credentials, smarter tag suggestions, clear save confirmation.
rebuilt on new backend no more auth redirect smarter tag suggestions
v3.3+
Deferred
iOS, Android & Theme Polish
Deferred until after the database migration settles. Simpler iOS setup and confirmed share-sheet support, Android testing and setup, cross-page theme sync, better photo color extraction, and a subtle logo animation. Picked back up once v4.0 is stable.
ios setup simplification android support cross-page themes logo animation
v4.0
Now
Infrastructure Migration
The biggest architectural shift — pulled forward from "later" because the Google Sheets backend grew too fragile at scale. Google Sheets and Apps Script are being replaced by Supabase, a managed Postgres database with a direct REST API. Data is migrated; the app runs in dual-mode (both backends switchable) while Supabase is proven. Same features, same data, dramatically stronger foundation.
supabase postgres 1,330 bookmarks migrated dual-mode cutover direct rest api row-level security
v4.0
cleanup
Retire Apps Script
Once Supabase has run as the sole backend for a stable stretch, remove the Google Sheets / Apps Script code paths entirely and drop the dual-mode toggle. The sheet stays as a cold backup.
remove sheet code path drop dual-mode toggle sheet kept as backup
v4.1
Google Sign-In via Supabase Auth
Replace the simple allowed-email check with proper Google Sign-In through Supabase Auth — a cleaner, managed auth layer. Google is the only sign-in method. This keeps DMPR a private personal tool with a solid login, without the complexity of a multi-user platform.
supabase auth google only managed sessions
v4.2
Native File Attachments
Notes file attachments stored natively in Supabase Storage rather than as base64 in the database. Images, PDFs, and any file type stored properly and served efficiently.
supabase storage image optimization attachment management
v4.3
Real-time Sync
Replace 30-second polling with Supabase real-time subscriptions. Changes appear instantly across all open devices. Add a bookmark on iPhone, see it on the laptop in under a second.
realtime subscriptions instant cross-device sync no more 30s polling
Guiding principles
Auth
Google sign-in
Sign in with Google, the one account you already have. No DMPR-specific passwords, and no sprawl of providers to manage.
Infrastructure
Browser-managed
Supabase replaces Sheets and Apps Script — a managed Postgres database with a direct REST API, administered entirely from the browser. No servers to maintain.
Growth
Invite-only launch
Multi-user launches as invite-only. Controlled growth while infrastructure scales. Open signup comes after stability is proven.
Promise
The core experience never changes
Every feature that exists today — bookmarks, notes, snippets, analytics, themes, mobile, bookmarklet, collections — stays exactly as it is through every version. Infrastructure changes are invisible to the user. Multi-user adds capability, it doesn't replace what works.
DMPR v3.05 → v4.0 — May 2026 dmpr.link