You're looking at the first post of a new site built with complite — a complete Eleventy blogging solution for people who write in Markdown and ship static HTML.
This post is a quick tour of what's included and how to get started.
What you get
Out of the box, complite ships with:
- Eleventy 3 with ESM configuration and Liquid templates
- Five layouts: home, blog archive, article, author profile, and a generic page
- Dark mode that works without JavaScript, using a three-layer CSS priority system
- RSS feed with an XSL stylesheet for human-readable browser rendering
- JSON-LD structured data for search engines
- Full-text search powered by SQLite and PHP with fuzzy matching
- Syntax highlighting via Prism, loaded only on pages that need it
- Contact form backed by a PHP handler with honeypot spam protection
Project structure
The source lives in src/. Data files in src/_data/ control the site's identity. Layouts and partials live in src/_includes/. Blog posts go in src/blog/posts/.
src/
├── _data/ # site.json, users.json, person.json
├── _includes/
│ ├── layouts/ # base, home, article, blog, author, contact, page
│ └── partials/ # nav, footer, post-card, pagination, ...
├── blog/posts/ # your markdown posts
├── static/ # CSS, favicons, images
└── index.liquid # homepage Writing your first post
Create a new .md file in src/blog/posts/ with front matter like this:
---
title: "My First Post"
description: "A short description for search engines and social cards."
date: 2026-05-21
author: admin
tags:
- writing
--- Then write your content in Markdown. Eleventy handles the rest — layout, navigation, RSS, sitemap, and social cards are all automatic.
Configuration
Edit three files to make complite yours:
src/_data/site.json— site title, URL, description, emailsrc/_data/users.json— author profiles (name, bio, social links)src/_data/person.json— JSON-LD identity for search engines
Running locally
npm install
npm run dev The dev server starts at http://localhost:8080 with live reload. For production builds:
npm run build This minifies HTML, inlines CSS/JS, and outputs everything to _site/.
That's the tour. Delete this post when you're ready, or keep it as a reference. Happy writing.