Introduction

What is Essencium?

A scalable, easy-to-maintain and adaptable boilerplate based on Next.js.

Background

The goal of Essencium is effortlessly build a scalable, easy-to-maintain and adaptable frontend. Projects based on Essencium should receive updates in the simplest way. Therefore, the Essencium library is built as an npm-package that can be installed via a package manager like npm, yarn or pnpm. As a consequence, new changes made on the Essencium library can be rolled-out as a new version and Essencium-based projects can easily update the dependency without copy and pasting the code manually.

Monorepository

We chose to use a monorepo architecture with the library, types, docs and the application as packages. That allows to easily develop the library, utilizing Vite and inspect the source code changes of the library via HMR inside the browser as if it was a single codebase. pnpm allows us to run certain commands (like build or test) for all packages that have a corresponding command in their package.json, with keeping the correct dependency order in mind.