Two Versions of the Site

At any given moment, the Light School codebase contains two versions of the website. The source version lives in a folder called src. The built version lives in a folder called dist (short for "distribution").

They look similar but serve very different purposes.

What Lives in src

The src folder is where all the editing happens. It contains the HTML files with include directives and tokens. It has the CSS split into five separate files. It holds the partials that get shared across pages.

This is the version that is easy to work with. Files are organized by purpose. Shared pieces are in one place. Tokens stand in for values that might change.

What Lives in dist

The dist folder is what actually gets published to the internet. Every file in dist is a finished product. Include directives have been replaced with real HTML. Tokens have been swapped for real values. CSS files have been joined into one.

You would never edit a file in dist directly. The next time the build runs, your changes would be overwritten. Dist is output only.

Why the Separation Matters

This split protects you from a common mistake. If the source files and the published files were the same, you could accidentally edit a live page and break something. Or you could forget to process a template and push a page full of unresolved tokens.

With the split, the rule is simple. Edit src. Build. Deploy dist. The build step is your safety net. It catches problems before they reach visitors.

A Factory Analogy

Think of src as the workshop where things are assembled. Raw materials come in, parts get put together, and quality checks happen. Think of dist as the showroom. Everything there is finished, polished, and ready to be seen.

You would not bring raw lumber into the showroom. And you would not try to sand a table that is already on display. Each space has its job, and keeping them separate makes both work better.