thebuilder.dkDaniel Schmidt

Weak signal

Signal lost

Daniel Schmidt

Frontend engineer working on the difficult parts between product, design and engineering.

I care about architecture, accessibility, performance and developer experience, and about building things that are still pleasant to work with years later.

The day job

At Charlie Tango, I help set the technical direction on larger web projects while staying hands-on as a developer.

I’ve helped shape our frontend platform and engineering practices, led frontend architecture, improved accessibility and testing, mentored developers, and built tooling that makes the work easier for the teams using it.

  1. 2026Viaplay Sport NewsSports newsroomUmbraco Awards runner-up
  2. 2025SundhedsstyrelsenPublic health
  3. 2024MDT+Clinical decision support
  4. 2023FeriepartnerHoliday booking
  5. 2022EDCProperty platform
  6. 2020VælgererklæringPublic service
  7. and many more

Built for Umbraco

Open source, for the CMS behind most of that work.

  1. blur-placeholder

    Image placeholders generated once, in Umbraco.

    Generated when the image is saved and handed to the frontend as one string. Public requests do no work.

  2. web-analytics

    Vercel and Plausible reports inside the Umbraco backoffice.

    Traffic, and the numbers for the page being edited, without opening another tab. It reads the analytics you already run.

  3. @charlietango/umbraco-rich-text

    Umbraco rich text, rendered as React components.

    Renders the Delivery API rich text JSON as React, with a hook to swap any node or block for a component of your own.

Open source

I maintain react-intersection-observer, a React library downloaded around 20 million times a month, along with a handful of other projects.

Open source is where I get to scratch the kinds of technical itches that turn up repeatedly in real projects, and occasionally discover that several million other people had the same itch.

  1. react-intersection-observer

    Tell a React component when it enters the viewport.

    A hook, a render prop, and a component over the Intersection Observer API. It reuses observers where the options match, and ships a test mock so tests do not need a browser.

It’s a Unix system!

When I saw Jurassic Park back in 1996, the dinosaurs were cool. But not as cool as the “unix” file system, flown through in 3D to lock the doors. I have wanted to build one ever since.

  1. FSN

    Visualize and navigate your file system in 3D space.

    Point it at a folder and the files stand up in front of you, in the same arrangement every time you open it.

One got out

It has been hanging over the canyon since 1978, and there are fifty-four more behind it.

Feriepartner

Holiday-home search and booking, with a map and result list that work together across desktop and mobile.

Solution architect & frontend lead · 2023–2024

feriepartner.dk

Feriepartner is a booking platform for holiday homes, with separate areas for guests and homeowners.

I worked as solution architect and frontend lead across the public site and the logged-in parts of the platform. One of the biggest frontend problems was making search and the map behave like one interface. The map, filters, result list and house cards all had to stay in sync.

Mobile browsers made this considerably harder. The map needed to work full-screen while still showing the matching houses as a usable list of cards. People had to be able to change their search, inspect a house and move between the map and list without losing the current search.

Much of the work was in the state and interaction details that keep those views connected. When it works, the map and list feel like two views of the same search rather than separate features competing for control of the screen.

Technology
React, Vite, Node.js, Umbraco CMS
Focus
Search and map interaction, frontend architecture, logged-in portals, accessibility and technical quality