← Back to portfolio

Project case study

Nexo

A personal organizer that turns projects and tasks into a clear next step.

01

Problem

Generic boards often add more management than clarity when the real need is knowing what to do now and how each project is progressing.

02

Solution

Nexo organizes projects and tasks through an Inbox, work states, priorities, dates, and Home and Today views. It also imports GitHub repositories and exposes the workspace to coding assistants through MCP.

03 · Architecture

Astro web -> typed API client -> Hono API -> Drizzle ORM -> PostgreSQL | MCP server -> API

04

My contribution

I designed and developed the web app, API, and MCP server. I defined the shared contracts, PostgreSQL persistence, and the GitHub integration flow.

05 · Stack

TypeScriptAstroHonoPostgreSQLDrizzle ORMZodMCP

06

Technical decisions

The web consumes the API through a typed client, with no direct database access. Routes, services, and repositories remain separate, while Zod contracts are reused across the API, web, and MCP.

07

How it works

Tasks are captured in the Inbox, then moved through intentional work states and associated with projects. GitHub repositories can be imported or linked to provide recent commit context, while the MCP server exposes projects and tasks to coding assistants.

08

Technical challenges

  • Keeping the daily workflow focused without reducing project context.
  • Connecting GitHub repositories securely while keeping tokens encrypted at rest.
  • Sharing task and project capabilities with AI clients without giving them direct database access.

09

What I would improve

  • Add notifications for blocked and due tasks.
  • Expand repository signals beyond recent commits.
  • Offer team-oriented workspaces while preserving the focused personal workflow.