← All work

Second Brain / Web

Starting with identity and a place to capture an idea.

An authenticated document-workspace prototype connecting Clerk identity, Convex records, and a simple title-creation flow.

My role
Full-stack development
When
2025
Built with
Next.js · TypeScript · Convex · Clerk

Explore how it works

Try it yourself ↓
Interactive explanation · illustrative sample

A document belongs to an identity.

Create a title for one sample account, then switch accounts to see the ownership boundary.

Alex’s workspace

2 titles
Research questionsOwned by Alex
Reading listOwned by Alex

1 other-account titles stay outside this view. Switching here selects sample data; it does not sign anyone in.

This illustrates owner-scoped title records. The original prototype uses Clerk and Convex; this example has no authentication, upload, or document editor.

The challenge

A personal workspace needs a reliable boundary between each person's records before it can grow into a larger product. This prototype explores that foundation through a small creation-and-listing flow.

How I built it

Connect identity to data access

I connected Clerk authentication to Convex queries and mutations, associating records with the authenticated user's token identifier.

Keep queries scoped to the owner

Document records are retrieved through an owner index, creating a clear boundary around the information shown in the workspace.

Build the first capture interaction

A validated dialog creates a document title and displays it as a card. The current implementation stores titles only; file upload and document editing are outside this prototype's implemented scope.

What came out of it

A small authenticated workspace demonstrating identity integration, owner-scoped persistence, and title capture with Next.js and Convex.

Sources & project context
Next projectLiterary retrieval experiment ↗