Skip to content


Beside the peer dependencies, there are no specific technical requirements only that it is highly recommended to use a compiling process with tree shaking in place.


Eufemia (@dnb/eufemia) can be used with an UMD, ES5, ES6 or TypeScript environment. The purpose is to use it on top (or inside) of modern JavaScript frontend framework and setups. But we strongly recommend to use Eufemia with a React stack, as this makes including the Eufemia tools and components most productive. All the components internal states are handled with React to only keep the most necessary in the DOM (HTML elements and event bindings).

The hard part of a living design system

The hard part of a living design system, like Eufemia, is not to create black holes and choosing ways to make maintainability of user experience hard and complex. To address this challenge and give more insight and thoughts, read on about maintainability.


Why is React a good choice:

  • Declarative and functional
  • Immutable structure
  • Lightweight
  • Centralization of code that should work in context (Concepts like, write code like reading a book)
  • Can be used both with a JAM stack, CSR and SSR (SPA) with the same code base (App)
  • Flexible frontend stack to create the best user experience, depending on the solution and their needs
  • Can be tailored to different conventions and guidelines

To use the styles

This library works perfectly together with any styling techniques, like Styled Components (Emotion), CSS Modules or SASS/LESS. You simply consume ready to use CSS files and CSS Custom Properties (CSS variables).