Jekyll Default Content: Exploring the File Structure
💡 What You Will Learn in This Guide
In this guide, you will examine the file structure of your newly created Jekyll site in detail. You will learn how Jekyll converts Markdown-based content into static HTML pages, the _config.yml configuration, and the Front Matter logic.
🧠 Technical Summary
Jekyll produces file-based static pages rather than dynamic content systems. This guide:
- Running the development server,
- Edit the
_config.ymlconfiguration, - Understanding page and post structure,
- Teaches how to add new content.
⚙️ 1. Starting the Development Server
Before starting the project, run Jekyll's development server:
cd ~/www
jekyll serve --host=192.168.1.10
This command starts the Jekyll server and allows testing via local IP.
View the site by going to http://192.168.1.10:4000 in the browser.
⚙️ 2. General Configuration: _config.yml
One of Jekyll's most important files, _config.yml, contains the general settings for the entire site.
To edit the file:
nano ~/www/_config.yml
Example configuration:
title: GenixNode'nun Blogu
email: destek@ornek.com
description: >
GenixNode teknik bloguna hoş geldiniz.
github_username: genixnode
twitter_username: genixnode
Changes made in this file are automatically reflected on all pages and posts.
Restart the Jekyll server for the changes to take effect:
jekyll serve --host=192.168.1.10
📄 3. Understanding Page Structure (about.md)
In Jekyll, each page contains a YAML-formatted block of information called “Front Matter”. This block tells Jekyll how to render the page.
Example about.md:
---
layout: page
title: "Hakkımda ve Ekip"
permalink: /hakkimda/
---
“layout” sets the template, “title” is the title and menu text, and “permalink” customizes the page URL.
The part after Front Matter is the Markdown content section of the page. This section is converted to HTML and becomes visible on the site.
To change the title, open the file:
nano ~/www/about.md
And update the title like this:
title: "Hakkımda ve Ekip"
This change is automatically reflected in the menu and title texts.
🖼️ 4. Adding New Pages and Content
To add a new contact page, create a directory to hold the images:
mkdir ~/www/assets
This directory is for storing static images.
Let's add a visual:
wget -O ~/www/assets/genixnode-logo.jpg https://assets.digitalocean.com/articles/jekyll-1604/postcard.jpg
Create the new page:
nano ~/www/contact.md
Page content:
---
layout: page
title: "Bize Ulaşın"
---
GenixNode\\
İletişim Departmanı\\
Büyükdere Cad. No: 1\\
İstanbul, Türkiye

\\in Markdown adds a line break,![]()calls an image.
The new page will be automatically added to the menu.
📰 5. Analyzing Post Structure (_posts)
Jekyll posts are stored in the _posts directory and require a special name format:
YYYY-MM-DD-baslik.markdown
For example:
2025-11-04-jekyll-guncelleme.markdown
Post example:
---
layout: post
title: "Jekyll'e Hoş Geldiniz!"
date: 2025-11-04 17:35:19 +0300
categories: jekyll guncelleme
---
The date determines the URL structure and order of the post.
Future dates will ensure that the post will not be published until that date.
🧾 6. Other Important Files
- main.scss: Converts Sass files to CSS.
- feed.xml: Creates an RSS feed.
- Gemfile: Lists the Ruby extensions (gems) used.
- Gemfile.lock: Stores the exact versions of these plugins.
These files are not visible, but they play a critical role in the site's infrastructure.
❓ Frequently Asked Questions (FAQ)
1. Why is Front Matter mandatory?
Because it tells Jekyll that the file should be processed with the template engine.
2. Why does _config.yml require a reboot?
Jekyll reads this file at startup; It is necessary to recreate the site after the change.
3. Does Jekyll support form submissions?
No, Jekyll runs static. For forms, Formspree or Netlify Forms can be used.
4. What is the difference between page and post?
Posts are date based and listed on the home page. Pages are fixed content.
🎯 Result
With this guide, you learned Jekyll's file structure, _config.yml configuration and content flow. Now you can easily customize your Jekyll project and manage your static structure securely. 🚀 You can publish your project with an optimized infrastructure by hosting it on GenixNode.

