TECHNOLOGY RADAR

The technology radar presents our “blessed” technologies, and other technologies that may become some of our blessed technologies - and some that we explicitly want to avoid. We call it the Technology Radar like Thoughtworks and other tech companies just for familiarity.

Hero

The Four Rings

adopt

We use these when they are appropriate for the type of the project. We’ve used them extensively and they’ve proven to be very successful choices for the appropriate projects.

trial

Things nearly certain to be worth using at least in the future, and may end up replacing some of our adopted technologies. Can be used in new projects where the risk can be controlled.

assess

Worth exploring with the goal of understanding. Not yet for any customer projects.

hold

Things we’ve trialed and used, but we would not like to use them in new projects.

The Radar

Current ecosystem

Web & Full-Stack

Websites and full-stack web applications.

Typescript

Typescript

Adopt

We try to stick to a single language. We use Typescript for everything. We know many more, but regardless we’ll do everything with Typescript where it is good enough.

ReactJS

ReactJS

Adopt

For Web and Mobile. We continue to assess other options as serious ones pop up, but nothing much better, and its ecosystem has ever shown up.

NextJS

NextJS

Adopt

We use this for websites. It has the needed features like SSR, SSG, ISG, and a routing architecture which is a perfect fit for websites. No need to poke around with the build.

Tailwind

Tailwind

Adopt

It’s easy to pick up. It has very little abstraction. It produces CSS as external style sheets which are important for Website projects.

ShadCN

ShadCN

Adopt

ShadCN is a collection of accessible and customizable React components built with Tailwind CSS, offering a foundation for building modern, consistent UI designs.

Chakra

Chakra

Hold

It served us well for Web Apps, but we’ve settled on Tailwind + ShadCN, which give us less abstraction and easier customisation. We would not start a new project on Chakra.

Vercel.com

Vercel.com

Adopt

Serverless deployment platform. Great for websites when paired with NextJS. Global CDN. Automated website performance monitoring built in.

Figma

Figma

Adopt

UX/Design tool of choice. Good for communicating ideas.

OpenAI Codex

OpenAI Codex

Adopt

Used along with Cursor and Claude Code. This is a fast developing space and the preferred AI coding tools may change every other week.

Claude Code

Claude Code

Adopt

One of the AI coding tools preferred along with Codex and Cursor.

Cursor

Cursor

Adopt

One of the AI coding tools preferred along with Claude Code and Codex.

Storyblok

Storyblok

Adopt

Headless CMS with a Visual Editor. It’s extensible enough for most our use cases in websites and has among the best user experiences for content editors.

Sanity

Sanity

Adopt

Pairing Sanity with Shopify projects is a great choice because of their excellent integration.

Framer Motion

Framer Motion

Adopt

Modern, react-oriented, and battle-tested in our production-grade projects animation framework. Creating a bit more complicated animations with this tool feels like a breeze ;-)

Remix

Remix

Hold

We’ve trialed Remix and Next.js remains our preferred option. Given the amount of API churn and the project’s shifting direction, we do not consider it a stable choice for new projects.

Vite

Vite

Adopt

We usually don’t have a need to muck about with build tools since we always base our projects on frameworks that make the build tool choice for us, but Vite is on the radar when it’s not an option.

ThreeJS + React-Three

ThreeJS + React-Three

Trial

Our default choice when we need full programmatic control of anything webgl/3d. We do not use this often enough though so it's mostly been employed in minor one-off cases.

T3 App Stack

T3 App Stack

Adopt

Currently our go-to for full-stack apps. We prefer to architect our apps as single full-stack deployables with back- and frontend in the same codebase when it makes sense, which is almost always in our projects, and T3 is a very good fit.

Tanstack Start

Tanstack Start

Adopt

A solid alternative to Next.js and a strong choice alongside our T3 stack for building full-stack React applications. TanStack Start aligns well with our preference for keeping the frontend and backend in a single codebase and deployable. We particularly like its type-safe routing, server functions, and relatively unopinionated approach, giving us more control over the architecture without sacrificing developer experience.

SolidJS

SolidJS

Hold

Keeping our eye on this if we’d get a specific use case, but its ecosystem is too minimal, nor does its advantages bring enough value considering its disadvantages in comparison to React.

VueJS

VueJS

Hold

We’ve trialed VueJS and deduced there is no reason to use it over React. For our engineers and projects, it’s worse in all regards.

Astro

Astro

Adopt

We find Astro to be superior in certain use-cases, particularly when content is crucial and optimal performance is needed to satisfy SEO gods.

Drizzle

Drizzle

Adopt

Drizzle ORM is a lightweight, TypeScript-first Object-Relational Mapping library designed for simplicity, type safety, and seamless integration with modern JavaScript and SQL workflows.

PayloadCMS

PayloadCMS

Hold

Payload CMS is a NextJS process-hosted, TypeScript-based headless content management system that offers extensive customization, robust APIs, and a developer-friendly experience. We've actively trialed it, but are a bit cautious after the acquisition by Figma.

We may have used other popular technologies,
but we don't have a single project using them left and
would never consider using them again.

Things like Angular, GatsbyJS, Redux or MongoDB
are so far in the back mirror that we've
dropped them off the "hold" section completely.