Developer Tooling

CRUI

Project type: Open source

Container registries are easy to push to and painful to browse. CRUI is a thin, read-only web UI over the Docker Registry V2 API — browse repositories, list tags, inspect manifests, drill into layer digests — with optional auth and a single Docker container to deploy.

The Challenge

Poking around a private registry usually means running curl against the V2 API or paying for a hosted registry UI. Teams want a small, browse-only tool that works against any V2-compliant registry without granting write access or standing up a full-featured registry frontend.

Our Approach

  • Next.js 16 App Router with Server Components calling the Docker Registry V2 API server-side — credentials never reach the browser
  • Optional session-based auth — works against public registries by default, prompts for credentials when the registry requires them
  • Manifest browser parses the OCI image spec and surfaces layer digests, sizes, and media types
  • Vitest for unit and component tests, Playwright for end-to-end registry browsing flows
  • shadcn/ui + Radix + Tailwind v4 with dark mode
  • Ships as a single Docker container with zero external dependencies

What It Achieved

  • One container replaces "ssh in and curl the registry API"
  • Safe by design — the UI literally cannot write to the registry
  • Works against any V2-compliant registry, public or private
  • Covered by Playwright tests so registry-browsing behaviour doesn't regress

Tech Stack

Next.js 16React 19TypeScriptDocker Registry V2 APIVitestPlaywrightshadcn/uiRadix UITailwind CSS v4Docker

Need a focused developer tool built in days, not months?

If there's a small internal pain point eating your team's time, we'll ship a fix.

Book a discovery call