Project

Persona

A secure, unified, and portable identity platform for creators, built on the edge.

April 2026

Project Overview

Persona is an all-in-one identity engine designed to replace traditional "link-in-bio" tools with a faster and professionally branded solution. It allows users to consolidate their social presence, professional portfolio, and contact information into a single, high-performance URL. The project focuses on extreme data efficiency and sub-second global latency.

The Problem

Standard link-aggregation tools often result in heavy page loads and bloated data structures. When sharing an identity via URL parameters or storing it in a serverless database like Cloudflare D1, every byte matters to maintain speed and stay within architectural limits.

The Solution

I built Persona using TanStack Start and Cloudflare Workers to ensure sub-second global delivery. To solve the data bloat problem, I developed a custom minification layer that strips unnecessary metadata before passing the payload to LZ-String for URI-safe compression.

Key Features

  • Edge-First Rendering: Utilizing TanStack Start and Cloudflare Workers for near-instantaneous global delivery.

  • Extreme Data Minification: A custom mapping engine that transforms verbose JSON objects into single-character key-value pairs (e.g., name to n, socials to s).

  • URI-Safe Compression: Integration of LZ-String to pack complex persona profiles into short, shareable URL components.

  • Dynamic Theming: A modern UI stack using Tailwind CSS and Lucide icons for a clean, professional aesthetic.

Technical Stack

  • Framework: TanStack Start (React)

  • Runtime: Cloudflare Workers

  • Database: No Database

  • Image Storage: imgbb

  • Compression: LZ-String

  • Styling: Tailwind CSS, Lucide-React

Challenges Overcome: Optimizing the Payload

The primary technical challenge was squeezing a full user profile—including names, bios, and multiple social links—into a compressed format small enough for seamless URL transport.

I implemented a robust Minification/De-minification layer (mapPersonaToMinified) that conditionally includes only populated fields and maps long keys to single characters. I significantly reduced the raw JSON size before it even hits the compression stage. This ensures that even a detailed "Persona" remains a lightweight string that the edge can process instantly.