Language:

eansite.

The most important thing in business is people, people, and people again. (с) Jack Welch

BLOG eansite.
← Back to articles
eansite.стандарты

How the eansite blog works: every content type

A technical test post: confirming the blog engine renders headings, lists, tables, images, links, video, code and quotes correctly.

"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:

  1. Pick a process that already has a KPI.
  2. Embed AI and measure the effect.
  3. 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

Managed path diagram: Diagnosis → Pilot → Scale

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.