and GitHub Pages
GitHub will host your project websites for free.
BUT.
You cannot use a database.
Jekyll is maintained by GitHub as an alternative to websites that require a database to generate content (WordPress, Drupal, etc.)
Jekyll serves static webpages, which means no lookup to PostgreSQL or MySQL, increasing performance.
It can't do everything a full CMS does.
But what it does, it does well.
You can place content, code, embeds, etc, in subfiles called "includes".
Invoking those includes in your site merely requires
typing { % include filename.html % } in your website.
You can put all your content in one page, allowing you to "capture" sections using keywords that you define, and place them anywhere you want in your document.
You can also use Markdown and Automatic Code Highlighting.
You can also use YAML (YAML Ain't Markup Language) headers to automate certain tasks,
like making sure the titles, description, author, and date appear both on the post and in the index.