A site without a database: content management with Markdown and Astro

Semih1 min read

This site uses no database. Posts, projects and services are generated from Markdown files. Why I chose this path and how it works.

semih.fun isn’t connected to a database. Every post, every project and every service is a Markdown file in the repository. Adding a new post is as easy as creating a file and pushing it.

Why no database?

For a portfolio and blog, a database is often an unnecessary moving part. Static pages:

  • need no server and open fast anywhere through a CDN,
  • leave no attack surface,
  • keep a record of every change through Git history.

A post’s journey

The block at the top of the file (frontmatter) is the page’s identity: title, description, date, tags and a shared key for finding its counterpart in the other language.

---
title: CRM or ERP?
description: Which one first?
lang: en
key: crm-vs-erp
pubDate: 2026-09-09
tags: [CRM, ERP]
---

Astro reads these files at build time, validates them against a schema and generates a page for each. Turkish and English files carrying the same key are linked to each other with hreflang.

For search and AI engines

Every page ships with its own title, description, canonical URL and structured data. The sitemap, RSS and an llms.txt file are generated from the same content. So the moment a post is published, it is readable by both search engines and AI answer engines.

More from the rulebook

  1. 2 min read

    GEO: how to write content that AI answers cite as a source

    Search isn't just ten blue links anymore. Structure, language and technical tips for content that answer engines like ChatGPT, Perplexity and Gemini understand and quote.

  2. 2 min read

    A bilingual site with Astro: wiring hreflang correctly

    How to set up URL structure, shared content keys and hreflang tags in Astro so search engines understand your Turkish and English pages correctly.

Chance

Got a project in mind? Let’s open the box: tell me what you want to build and I’ll prepare a proposal with the scope and a roadmap.