How I Built My Website
May 28, 2025

- First Step: Domain and Hosting
- Second Step: Build the Website with Jekyll Locally
- Third Step: Automatic Deployment
- Tech Stack
First Step: Domain and Hosting
First, I registered my domain jennykraft.de on Namecheap. This costs around 9 € per year and is the only cost for this website because I’m hosting it on GitHub Pages, so there is no fee for that.
Second Step: Build the Website with Jekyll Locally
I decided to use Jekyll because it’s the engine behind GitHub Pages and is a lightweight static site generator, without a large CMS like WordPress (Content Management System) in the background. Jekyll generates static pages from Markdown files, so you can write a blog post in Markdown and it will automatically create a static site that your readers can access.
To make life easier, I decided to use a Jekyll Docker image to view the website in a Docker container and test it via http://localhost:4000. This way, I can check whether everything works correctly before deploying to the public repository.
Third Step: Automatic Deployment
The core logic of my website is in a private GitHub repository. To get the Jekyll-compiled website to the public repository where my site is hosted, I’m using GitHub Actions, which automatically create an orphaned commit to the public repository when I push a commit to the private repository. An orphaned commit ensures that there is no commit history, so only the current state of the website is accessible.
You can find out more about Jekyll here: https://github.com/jekyll/jekyll
Tech Stack
This is the tech stack of my website:
- HTML, JavaScript, CSS (+Bootstrap)
- GitHub, GitHub Pages, GitHub Actions
- Jekyll
- Markdown