We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Build a Static Site Generator in Python

Build the kind of tool that turns Markdown into a website, then understand static site generators from the inside.

What will you learn?

Ever wondered how SEO and performance-optimized static site generators like Hugo work? In this guided project you'll build your own from scratch using Python. You'll put a lot of your learnings from Object-Oriented Programming and Functional Programming to use in a tangible web project. This project isn't for the faint of heart, but it's well worth the effort. You'll come away with a deeper understanding of static content management.

Chapter List

1
Static Sites
Learn about what a static site is, and start building the functionality necessary to process and move static HTML and Markdown files.
2
Nodes
Build the core HTML generation logic that will power your static site generator. Use recursion and OOP to build an easily understandable and maintainable system.
3
Inline
Build the inline markdown parsing logic, and the logic to generate inline HTML elements.
4
Blocks
Handle entire blocks of markdown, and generate the HTML nodes that represent them.
5
Website
Put the entire static site generator together, and publish your first website.

Join 14,676 students in the Build a Static Site Generator in Python course

Read reviews of their learning experiences

Its difficult, but its one of the best ways to understand how the web page works

(3/5)
Jônatas Hellmann profile image

Jônatas Hellmann

Brazil

Fantastic. As I delved deeper into the mines of Mor...I mean into python, Iwritig code, repos, this was a nifty tool that helped me think big. Real good project

(4/5)
Pawan  profile image

Pawan

San Jose

Absolute behemoth of a guided project. Not much hand holding remains, but getting through it was definitely worth it.

(5/5)
Jere Kukkohovi profile image

Jere Kukkohovi

Helsinki Metropolitan Area, Finland

Good course, just really repetitive

(3/5)
Cade Chwialkowski profile image

Cade Chwialkowski

United States

Boring

(3/5)
Jim Karampelas profile image

Jim Karampelas

Greece

Great project to get some more complicated functions and class relationships together. I feel much more apt to continue more difficult projects going forward, and I am excited to see what comes next!

(5/5)
Bryce Croft profile image

Bryce Croft

United States

this project was REALLY cool. i really appreciated the unit tests part, it's something i've barely ever done and seeing it like this made me realize how useful it was. not only that, but the project is something I kinda feel like expanding on too. really cool project.

(5/5)
ZIL∅  profile image

ZIL∅

Spain

definitely tests you coding and stress management skills

(5/5)
Rudraksh Thakur profile image

Rudraksh Thakur

India

Great course that leads you by the hand at the beginning, giving the base idea on how to work and then ask you to start thinking yourself on the implementation with minimal guidance

(5/5)
Dmitrii Zverev profile image

Dmitrii Zverev

Czechia

Showing 1-9 of 403

or view more reviews

Mediocrity doesn't cut it anymore

The only way to become a great developer is to write a lot of code

Avoid tutorial hell

by writing a ton of code

Stay motivated with

a game-like curriculum

Build portfolio projects

to prove your skills

Delve deeper

into foundational concepts

Learn flexibly online

without interrupting your life

For 1% the price of college

to minimize your financial risk

Frequently asked Questions

Got questions? We've got answers

Yes! It's free to create an account and start learning. You'll get all the immersive and interactive features for free for a few chapters. After that, if you still haven't paid for a membership, you'll be in read-only (content only) mode.