Eleventy Excellent
Baseline and eleventy-excellent make a lot of the same decisions. Both keep config in its own directory instead of one long file, and both keep content clear of the machinery around it. CSS and JS go through a real pipeline. Share cards are generated at build time, and the head is composed from data rather than typed out page by page.
Both projects landed in the same place because they were answering the same question: what a site needs settled before you can start writing. There are only so many good answers to that.
What changes when you integrate is who keeps those answers working. Right now the head partials, the asset build and the share-card generator are yours to maintain. Afterwards they arrive as a dependency you update, and the code that did the same job leaves the repository.
Before you start
The overlap is why this guide is shaped the way it is. Most of the integration is renaming. You are not replacing the starter's thinking so much as moving it onto conventions that already match, then handing over the parts a plugin can keep up to date for you.
The longest chapters are about conventions rather than about the plugin. Where files sit and what they are called takes more explaining than the thing that reads them. Where the two disagree, the guide says so.
Prerequisites
The starter cloned and running, Node 22 or newer, and somewhere to set BASELINE_URL on your host.
This guide was written against @apleasantview/eleventy-plugin-baseline@0.1.0-next.46 and eleventy-excellent 4.7.1.
The reference implementation is the 0.1.0-next.46 branch of eleventy-baseline-excellent, whose commits line up with the chapters below, apart from the config export, which is presented earlier here.
The shape of it
The first three chapters do not use Baseline. They are structure, naming and config shape, and the site builds identically to upstream all the way through them. You install the plugin at the start but nothing registers it until the fourth chapter, so you can do all of this before deciding whether you want it, and stop at the seam with a tidier project and nothing else changed.
By the end, the dependency count is down from 45 to 42, src/_includes/head/ is gone with its seven partials, the two schema templates are replaced by one data file, and the CSS and JS build events are replaced by entry points. The integration removes more than it adds.