• The forgotten page

    In this post we, learn how to use template blocks to add the header and footer sections with a navigation menu to all pages of the website and re purpose the about page to be the front page.

  • The details page

    We created a static website with the About, Teaching, and Research pages. The `/research` page lists all projects in a compact manner. In this post, we will create a dedicated page for each research project listed in the data store.

  • Attack of the (static) assets

    In this saga, a new force rises to the ranks of the static website republic and threatens the peaceful galaxy of pages. In this chapter we tackle static assets and create a new sub page for the static website.

  • Pretty URLs

    In this post, we will change the build script to make the URL that we type in the browser more convenient and intuitive for us humans to read, in other words "prettier".

  • Separating data from the rest

    Make the development process a little bit more productive by separating the data from the other parts of the website. Previously, the content of the webpages were either hard-coded into the templates themselves, or into the build script when passing values to the template. In this post, we give the data its own home.

  • Creating templates

    In this post, we will go one step further in our static website development. We create 2 new pages using Jinja2 templates.

  • Hello website

    In this post, we will build our first static page using `python`, an `html` template, and serve it locally.

  • Setting up your development environment

    This is the first post of the static website development series in which I'll walk over the process of building a static portfolio website. In this post, we will set up our project on our local computer.

  • Aloha!

    Welcome to Paulo's personal website.