Hamburger Icon
  • Labs icon Lab
  • Core Tech
Labs

Build a Static Site Generator with Python

Labs

Path Info

Level
Clock icon Intermediate
Duration
Clock icon 2h 32m
Published
Clock icon Sep 12, 2022

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    The Site Class

    Overview

    Python is great for building simple command line applications. In this lab, you'll use classes to architect a command line static site generator. It will convert a group of either Markdown or reStructuredText files to HTML.

    The command line application will be built using the Typer library and will allow you to configure a source folder to convert, containing your Markdown and reStructuredText files and a destination folder which will eventually contain the converted HTML files.

    In this module, we'll create a class that will set configuration values and create the root structure of our static site. ### Solution The solution can be found in the solution directory.

  2. Challenge

    The Parser Class

    In this module, we'll create a parser class which will have several utility methods to help convert Markdown and ReStructuredText to HTML.

  3. Challenge

    The Content Class

    In this module, we'll create a custom collection class to model the content of a Markdown or ReStructuredText document.

  4. Challenge

    Parser Subclasses

    In this module, we'll create two parser subclasses to convert Markdown and ReStructuredText to HTML.

Tom is a staff author at Pluralsight helping to develop Hands-On content. Tom's background in software development, UI/UX, and instructional design was developed over the years while working as a faculty member at the School of Computing at Weber State University in Utah, and continues to grow as he develops Projects and Labs for Pluralsight. When he's not creating content to allow learners to gain real-life experience, he enjoys spending time with his family.

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.