My site
Go to file
2024-11-24 14:56:54 +01:00
_pages portfoliooooo 2024-10-23 16:01:48 +02:00
_posts/blog git_afk blog post 2024-11-24 13:15:48 +01:00
_projects order projects 2024-09-27 13:34:07 +02:00
.gitea/workflows Update Node.js to v22 2024-10-31 18:27:13 +00:00
.zellij remove old svelte web source 2024-09-30 21:13:20 +02:00
docs remove old svelte web source 2024-09-30 21:13:20 +02:00
src Logic for recommended articles 2024-11-24 14:56:54 +01:00
static git_afk blog post 2024-11-24 13:15:48 +01:00
styles Description in RSS feed 2024-11-24 13:35:23 +01:00
templates Logic for recommended articles 2024-11-24 14:56:54 +01:00
.gitattributes Add egg-fetcher demo 2022-06-28 09:32:15 +02:00
.gitignore remove old svelte web source 2024-09-30 21:13:20 +02:00
.lfsconfig-netlify remove old svelte web source 2024-09-30 21:13:20 +02:00
.npmrc fix legacy peer deps 2023-02-02 20:00:03 +01:00
.nvmrc Change node version to always be latest LTS 2023-02-02 20:05:07 +01:00
.prettierignore Svelte kit transition 2021-04-24 18:24:17 +02:00
.prettierrc Svelte kit transition 2021-04-24 18:24:17 +02:00
askama.toml remove old svelte web source 2024-09-30 21:13:20 +02:00
Caddyfile-preview 404 page 2024-10-07 10:14:32 +02:00
Cargo.toml add images to rss feed 2024-11-24 14:06:14 +01:00
email-signature.html Change email signature 2022-03-17 18:01:09 +01:00
justfile animated logo 2024-10-31 19:25:53 +01:00
LICENSE Add Licenses 2022-05-07 21:12:26 +02:00
missing_lfs_files.txt remove old svelte web source 2024-09-30 21:13:20 +02:00
README.md update readme 2024-11-08 17:06:04 +01:00
renovate.json Add renovate.json 2024-10-31 09:06:39 +00:00
robots.txt broadcasts and 404 errors 2024-10-02 15:32:40 +02:00
tailwind.config.js remove old svelte web source 2024-09-30 21:13:20 +02:00
test-animate.svg portfoliooooo 2024-10-23 16:01:48 +02:00

michalvanko.dev site

This is the repository for my own site hosted at https://michalvanko.dev

Feel free to use and ammend to code to your needs. Respect the Creative Commons BY-NC-ND 4.0 License for the content of the site.

Architecture

The site is hosted as a static generated HTML files on the server via Caddy reverse proxy. There is an example Caddyfile that can be used for deployment on server. During development the axum web framework serves content as a HTTP server in a classic SSR HTML.

Development

Look at the justfile for the available commands that are being used for development and deployment.

Use just server_dev or just dev for running the server for development purpose.

Tools and libraries used for generating the content

Deployment

Deployment requires these steps:

  1. Ensure all images are generated 1.1 Run server in either dev or production mode just prod 1.2 Crawl the site with just ssg command to ensure all routes are being hit to indicate that all images have to be generated. 1.3 Wait till the server stops generating images. Monitor the CPU load until it drops. Takes few minutes.
  2. just export will start the server in production mode and use wget to recursively crawl the site. Remember, content has to be linked somewhere on the site to be discovered by wget.
  3. just deploy will synchronise the /dist folder with the server with rsync

Image generation

I want all images to be served to users optimally. All images that are used are generated in several sizes so they are optimized for different displays sizes. Browsers will pick and download the appropriate size.

I'd love to link some references for this problem, but I haven't found the exact use case that I was trying to solve.