Portfolio · case studies

Three pieces of work in detail.

What had to be solved, how I built it, what with, and what actually shipped. No stack theatre, no buzzwords.

SCANZY

Freelance · concept, design, build · React + Vite · 2026

Problem

SCANZY sells 360° tours, drone flights, and FPV cinematics to hotels, real estate, and hospitality. The product is visual, the previous site did not pay the promise. Brief: deliver the premium story in five seconds without sliding into agency-showreel optics, and keep the established industry routes (hotel, real estate, restaurant, Carinthia) intact in the header.

Solution

Editorial dark hero with the drone footage as signature element, brand system in midnight navy, cream gold, and a warm cream background (Edition 2026 PDF as canon). Source Serif display with gold italics as recurring accent motif, deliberately not Fraunces. Industry routes for real estate, hotel, restaurant, and Carinthia landings preserved in the header, legal pages tidy alongside.

Stack

  • TypeScript
  • React 18
  • Vite
  • Tailwind CSS
  • shadcn/ui

Outcome

Brand system locked into code, not only in the PDF. Central inquiry channel; the founder has been actively recommending the work onward since then ("design and structure fit the offering perfectly").

scanzy.at homepage: SCANZY wordmark above a warm sunset mountain landscape with the headline "Ihr Objekt hat mehr verdient als nur Fotos."

b-cal

Personal product · architecture, build, ops · since 2025

Problem

Calendar apps like Google or Outlook pull events, reminders and auth into someone else's ecosystem. I wanted hard evidence that I can build and run a full web app end-to-end, with no vendor in between: frontend, backend, database, auth, mail, deploy.

Solution

Next.js on the front, NestJS on the back, Prisma over PostgreSQL. Own session-based auth instead of a third-party provider, multi-device, email reminders via SMTP. Bilingual UI (DE/EN), dark and light themes. Self-hosted on my own Hetzner infrastructure, code public, demo usable straight in the browser.

Stack

  • TypeScript
  • Next.js
  • NestJS
  • Prisma
  • PostgreSQL
  • SMTP
  • Hetzner

Outcome

A living reference app: every layer (auth, ORM, UI, mail, deploy) is visible, readable, and usable. I use it with agencies and small businesses to demonstrate web app depth beyond classic marketing sites.

b-cal month view in a dark theme with colour-coded entries across the "Arbeit" and "Privat" calendars.

bfnoessler.at

Own brand · concept, design, build · Astro · 2026

Problem

Stock dev-portfolio templates sell the wrong thing: Geist plus Geist Mono is the AI-template default, "trusted by" walls are the agency reflex, animated gradients the showreel reflex. An offer built on recurring care for small landing pages needs a visual layer that reads as calm, precise, trustworthy, not as a cursor-blob showreel.

Solution

Self-hosted Astro 6 site with a hand-written CSS token system (no Tailwind, no framework), a single ink-blue hue (oklch 248°), General Sans Variable plus Commit Mono instead of the Geist default, asymmetric editorial layout instead of centred bullet grids. Bilingual DE/EN, each with its own voice rather than a one-to-one translation. Contact form with honeypot plus per-IP rate-limit, SMTP via nodemailer, no third-party transactional service. No tracking, no third-party fonts.

Stack

  • Astro 6
  • TypeScript
  • Hand-written CSS
  • Node standalone
  • nodemailer
  • Docker
  • Coolify

Outcome

The page right here. Lighthouse mobile consistently ≥95 on Performance, Accessibility, Best Practices, SEO. Brand and tooling layer carry the offer instead of just illustrating it.

Sounds like your project?

Free 30-minute discovery call. I usually reply within 48 hours.

Or write directly to benjamin@noessler.at