Todd Watts
← All work

This portfolio

A readable front door with publishing and operational boundaries behind it.

My role
Personal project · application, integrations and interface
Project status
Production foundation · interface under review
Tools in context
Next.js / TypeScript / Bun / Vercel / SpacetimeDB
Fig. · The TW monogram on a stack of type sheetsBlender model, drawn in type

The problem

A portfolio should make evidence easy to find without turning a hiring conversation into a software demo. Publishing, external feeds and optional AI still need meaningful boundaries.

Working constraints

  • Keep existing publishing and operations contracts intact.
  • Serve project content without an AI service, database connection or client-side JavaScript.
  • Do not let experimental features store private visitor input or claim authority over the portfolio.
A paper studio model of an extruded TW monogram standing on a fan of type sheets, circled by a thin orbit with a lime satellite and cursor.
Study · the same model, restaged in paper and inkGenerated illustration · Blender model → gpt-image-2.5 studio pass

What connects
to what.

The workflow below follows the main handoffs and the boundaries each one introduces.

Workflow outline

  1. Content

    Reviewed project records and repository-backed writing supply ordinary routes.

  2. Delivery

    Next.js renders the core pages, and links remain useful without optional services.

  3. Optional tools

    The Project Advisor selects reviewed questions, then proposes a plan from submitted input. An opt-in state demo illustrates a separate workflow.

  4. Operations

    Authenticated publishing, health checks and private persistence remain behind server boundaries.

The decisions

Separate proposals from portfolio evidence

The current Advisor asks reviewed questions before drafting a proposal. The earlier evidence finder is retired from the interface; its guarded, default-off endpoint remains separate infrastructure.

The alternative. An open-ended portfolio chatbot could produce fluent answers with unsupported experience or claims.

Keep optional work optional

Server-render the content and label local simulations and disconnected integrations.

The alternative. Making a database or AI session mandatory would make the simplest visitor journey the most fragile one.

Preserve useful infrastructure

Replace presentation while retaining authenticated publishing, sanitized Markdown and operational APIs.

The alternative. A visual rewrite alone would be smaller and would discard useful production behavior.

After the
happy path.

These are the failure cases and maintenance responsibilities that shape the implementation:

  • Validate request size, origin, provider configuration and usage limits before inference.
  • Keep publishing create-only by default and durable storage explicitly configured.
  • Test browser accessibility, failure paths and API contracts separately.

What the work enables.

  • The reviewable implementation connects ordinary project pages to bounded interactive explanations.
  • The established production backend remains the foundation, while the interface is reviewed separately.

Follow the evidence

Want to discuss the details? Let’s talk ↗