{ "cells": [ { "cell_type": "markdown", "id": "dda60de8", "metadata": {}, "source": [ "## Roadmap\n", "\n", "- [x] Load markdown\n", "- [] Determine static website structure\n", " - Where to put assets for subsites like dogma jimfinium\n", " - How to otherwise organize pages\n", "- [] Resolve markdown links\n", "- [] Consider separating article templates and overall page templates\n", "- [] RSS feed\n", "\n", "\n", "WEBROOT\n", "- assets\n", "- main pages\n", "- resume\n", "- dogma-jimfinium/\n", " - assets/\n", " - pages" ] }, { "cell_type": "code", "execution_count": 1, "id": "207d2510", "metadata": {}, "outputs": [], "source": [ "import os\n", "import markdown\n", "import yaml\n", "import subprocess\n", "\n", "\n", "from datetime import datetime\n", "from main import *" ] }, { "cell_type": "code", "execution_count": 9, "id": "d2361c42", "metadata": {}, "outputs": [], "source": [ "metadata, content = load_markdown('tmp/dogma-jimfinium/blowouts.md')\n", "content = content.replace('src=\"assets', 'src=\"../tmp/dogma-jimfinium/assets')" ] }, { "cell_type": "code", "execution_count": 10, "id": "ed7b3b2f", "metadata": {}, "outputs": [], "source": [ "PARTIALS = load_partials()\n", "html = format_html_template('templates/default.html', content = content, **{'metadata__'+k:v for k,v in metadata.items()}, **PARTIALS)\n", "with open('dist/home.html', 'w') as f:\n", " f.write(html)" ] }, { "cell_type": "code", "execution_count": null, "id": "b8c87620", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "57383c24", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2025-12-01\n" ] }, { "data": { "text/plain": [ "CompletedProcess(args=['cp', 'build/resume/2025-12-01/shepich_resume.pdf', 'dist/shepich_resume.pdf'], returncode=0, stdout=b'', stderr=b'')" ] }, "execution_count": 170, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def get_latest_resume():\n", " max_date = '0000-00-00'\n", " for resume_folder in os.listdir('build/resume'):\n", " try:\n", " datetime.strptime(resume_folder,'%Y-%m-%d')\n", " except Exception:\n", " continue\n", " \n", " if resume_folder > max_date:\n", " max_date = resume_folder\n", " \n", "\n", " print(max_date)\n", " # print(max_date.strftime('%Y-%m-%d'))\n", " \n", " run(f'cp build/resume/{max_date}/shepich_resume.pdf dist/shepich_resume.pdf')" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.3" } }, "nbformat": 4, "nbformat_minor": 5 }