How the eansite blog works: every content type
"Substance beats form — but form decides whether the substance gets read."
— eansite editorial (content guide)
This is a technical test post. Its job is to push every major content type through the blog engine and confirm it renders correctly — from tables to embedded video. If you can read this on the site, the Markdown → HTML pipeline works.
Text and formatting
Paragraphs render in Cormorant. Inline you get bold, italic and strikethrough, plus inline code such as lib/posts.ts. Links point outward — for example, to the CommonMark specification — and turn accent-red on hover.
Lists
Unordered list:
- Diagnosis — where AI is actually needed.
- Pilot — an early, measurable result.
- Scale — a system with accountability for the loop.
- Nested item: ExoChat in the customer's perimeter.
- Another nested: core-team training.
Ordered list:
- Pick a process that already has a KPI.
- Embed AI and measure the effect.
- Make a Go / No-Go decision.
Task list (GFM):
- Scaffold the site
- Verify i18n and deploy
- Fill the blog with real articles
Table
| Stage | Duration | Deliverable |
|---|---|---|
| Diagnosis | 45 min – 3 wks | Report and a pilot proposal |
| Pilot | 5–7 days | Metrics, a trained core team |
| Scale | project-based | System in production, loop (ExoChat) |
Image

Video
As a link: watch a sample on YouTube.
And as an embedded player:
Code
Inline: call getPostBySlug(slug, locale). Highlighted block (Shiki):
// lib/posts.ts — load a post by slug, locale-aware
export async function getPostBySlug(
slug: string,
locale: PostLocale = 'ru',
): Promise<NewsItem | undefined> {
const paths = getSlugToFiles().get(slug)
if (!paths) return undefined
const filePath = locale === 'en' && paths.en ? paths.en : paths.ru ?? paths.en
return filePath ? (await loadPostFromFile(filePath, slug)) ?? undefined : undefined
}
Build command:
pnpm lint:posts && pnpm build
Quote
We don't sell AI magic. We guide you stage by stage — diagnosis, pilot, scale — and on our side we ensure speed, quality, and risk control.
That wraps the content-type tour. Below, the engine appends the "Our view", "Conclusions" and "Sources" blocks from the post's metadata.
Our view
The blog is a working tool, not a showcase: articles, breakdowns and cases about the managed path to AI adoption. Content is authored directly in the repo, linted, and built statically — that keeps us fast and predictable.
Conclusions
If this post rendered in full — headings, lists, table, image, video, code and quotes — the eansite content engine is ready for real publications.
Sources
- CommonMark Specification — CommonMark
- GitHub Flavored Markdown Spec — GitHub
- State of AI in the Enterprise (2026) — Deloitte AI Institute