Internal Roadmap · v1

Built short.
Built right.

ez.fyi is Otto Clothing's internal URL shortener and transparent file proxy. This page tracks what has shipped, what we're building next, and what's on the horizon.

7
Plans in v1
6
Merged
1
In Flight
0
Queued

Phase 1 — v1 (the foundation)

Seven plans land the production-ready Worker. Plans are sequenced; each one builds on the last.

Plan 01

Foundation + Type A static proxy

Public /:slug proxy, D1 + KV hot-path, slug generator, branded 404 / 410 pages, Cloudflare edge cache for static files.

Merged
Plan 02

API for create + revoke + webhooks

POST /api/v1/links and DELETE /api/v1/links/:slug with Bearer auth, idempotency keys, fire-and-forget webhooks, nightly cleanup cron.

Merged
Plan 03

Public Backlogs page

This page. Read-only roadmap, branded against Otto's design system. Lands ahead of the admin UI as the live tracker for Plan 4.

Merged
Plan 4a

Admin UI + Google SSO

Server-rendered /admin/* gated by Google SSO. Replaces every wrangler d1 execute operator workflow.

Merged
Plan 4b

Tags

Per-link tagging across the data model, public API, and admin UI. Tag picker on create, chips on detail, AND-filter on the link list.

Merged
Plan 4c

Public docs + OpenAPI

Public /docs/* reference + /api/v1/openapi.json, all driven from the same schemas the API parsers use — no parallel source of truth to drift.

Merged
Plan 05

Type B + token encryption + SSRF allowlist

Live content from an upstream API through the short URL: an admin-managed host allowlist, one encrypted write-only token per API consumer, and an SSRF-safe proxy with a timeout, a size cap and no caching.

In review

What's coming after v1

Each phase is independently releasable once v1 is live. Order is indicative, not committed.

Phase 2 · UX & Discoverability

Easier to find, easier to share

  • QR code endpoint at /:slug.png
  • OpenGraph rich previews for messaging apps
  • Saved views per persona in admin UI
Phase 3 · Analytics & Bulk Ops

Operate at scale

  • Full click analytics with per-link timelines
  • Bulk link create / revoke (CSV + API)
  • Link expiry with slug reuse (2-year default)
Phase 4 · Advanced Controls

For when v1 isn't enough

  • Folders / hierarchical tag namespacing
  • Opt-in custom slugs (non-sensitive only)
  • Password-protected links
  • AI / semantic search over links and content