The story of the initial setup of this web site

Who I ended up with the Quarto framework for this web site.

python
yaml
tools
install
Author

Charles-Albert Lehalle

Published

August 30, 2024

I was looking for a framework allowing me to create and update this web site. My criteria were simple:

Installing Python on my Macbook Air

This was the first step, I followed this stack to instll and this stack to solve a problem, and hence used pyenv to control the version at the level of the ‘project’ (that means directory for pyenv), pyenv versions tells me what is intalled.

Then I needed to package the environment I will use for to generate web pages from python code. Virtualenv is, according to me, the simplest way to do it:

cd www_lehalle
python -m venv venv_quarto
. venv_quarto/bin/activate
quarto preview cal_website/

And for a simple demo file, I needed numpy and matplotlib, thus I created a requirement.txt file and started to populate it with my favorite python packages. Quarto uses jupyter, that I had to install in the venv too.

Trying Quarto

After reviewing (and partially tesing) a lot of possible solutions, I started to make more efforts with Quarto (even if it is apparently not an open source solution…), around Silvia Canelon’s web page.

It worked quite well, I just had some problems with icons: after trying different regular options (like installing fotawesome or adding iconify), I found iconify that provides svg versions of standard icons and I copy-pasted them in my code…

a screenshot of emacs editing this blog post

Aggregating different features in Quarto

Initially I wanted to fork Silvia’s web site, but it happened to be complicated, thus I ended up by copying and pasting block by block what I liked in her setup to build this one.

As of today:

  • added more content on the front page
  • changed the subdirectories
  • understood how to write blog posts
  • TODO: I would like to understand how to get the right-hand side table of content she has…

Notes about blogging

Blog posts are written manually: each post has its own directory, that should be good to include python code or notebooks, and the main page is named index.qmd. The main picture (appearing on the list of posts) is controlled in width only, so the user has to keep it not too high.

Back to top