Project Overview

embodi - a static site generator

embodi is my attempt to reimagine the idea of website builders like Wix in an open, developer-friendly format. The tool generates interactive, fully static pagesmodular by design, easy to customize, and completely open source. The goal is to create a system that offers maximum control without introducing unnecessary complexity.


The initial motivation came from a simple request: build a website for a relative. Instead of creating a conventional site, I decided to develop a flexible builder where content and components can be combined independently – without a fixed backend and without rigid tooling constraints.

Technically, embodi is built on Svelte and Vite, and generates fully hydrated single-page applications from structured content like Markdown or JSON. The first version was based on SvelteKit, but soon hit limitations, especially in terms of user guidance and extensibility. That led to a custom solution with more transparent build processes and greater flexibility.

A key focus lies in handling different contexts like development, prerendering, and runtime. Each comes with its own challenges – from managing assets and paths to resolving metadata – all of which are explicitly addressed in embodi’s modular architecture.

This project has given me deep insights into modern build systems using Vite and strengthened my understanding of Svelte, particularly in the areas of preprocessing, component architecture, and building tools that empower other developers.

embodi is licensed under Apache 2.0 and is actively maintained. The first version is still publicly available under the name Vally.

from
06/2022
Languages
TypeScript
Svelte
Frameworks
SvelteKit
Vite
Vitest
Valibot
SvelteKit Superforms
Other
GitHub Actions
GitHub OAuth
GitHub API