Skip to content

DanielThedie/danielthedie.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

danielthedie.github.io

This website is created using a custom Python generator, HTML templates, and structured files (YAML, Markdown) for content. The Python generator is run on every push to the main branch by a Github action to update the website. The generated HTML documents are saved in the deploy branch. See below for more details on the folder structure.

.github/workflows

Contains the Github action that runs the Python generator upon pushing to the main branch, and pushes the generated HTML documents to the deploy branch (docs folder).

content

Structured files for website content, used to fill the HTML templates. Files are either in YAML format (for pages that have multiple items with short content) or Markdown (for larger content).

blog

Folder containing blog posts in Markdown format. File names follow the pattern: YYYY-MM-DD_blog-title.md. The date corresponds to the first publication of the blog post, and will be displayed below the post title.

docs

This folder contains all the necessary material (HTML, CSS, javascript and resources) to publish the website. HTML files are generated by the Python generator, so they are absent from the main branch, but can be found in the deploy branch.

resources

Static resources (images).

scripts

Javascript code.

styles

CSS styling. Contains one stylesheet per page on the website. The style.css stylesheet also contains styling for common elements (e.g. the navigation bar). variables.css contains variables that are reused throughout the website, e.g. the accent colour.

style.css and variables.css are applied to all pages. Other stylesheets are only applied on the matching page.

src

The custom Python generator. main.py is the script that is run on every push to the main branch to generate the website HTML. pages.yaml contains a list of website pages to be generated. "name" is the file name for the generated HTML file. Title (optional, will default to name value if absent) is how the page will appear on the website. For example, the website landing page is index.html, but its title on the site is "About". All entries in pages.yaml must be lowercase.

templates

HTML templates to be used for website generation. base.html contains all common elements. Files that have -item in their name contain templates that can be repeated multiple times on a page (e.g. the software cards).

About

Personal website for Daniel Thedie

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors