Markdown blog on Flask with Vite-built assets and WeasyPrint PDF export, rewritten from the Wagtail build that preceded it.
blogdockerflaskmarkdownpythonself-hostedvite
1import CodeMirror from "codemirror/lib/codemirror.js";
2
3import "codemirror/mode/python/python.js";
4import "codemirror/mode/javascript/javascript.js";
5import "codemirror/mode/htmlmixed/htmlmixed.js";
6import "codemirror/mode/css/css.js";
7import "codemirror/mode/shell/shell.js";
8import "codemirror/mode/toml/toml.js";
9
10import "codemirror/lib/codemirror.css";
11import "codemirror/theme/material-darker.css";
12
13
14document.addEventListener("DOMContentLoaded", () => {
15 const blockCode = document.querySelectorAll(".block-code");
16
17 if (blockCode) {
18 Array.prototype.forEach.call(blockCode, (block) => {
19 const textarea = block.querySelector("textarea");
20 CodeMirror.fromTextArea(textarea, {
21 theme: "material-darker",
22 lineNumbers: true,
23 readOnly: true,
24 viewportMargin: Infinity,
25 mode: textarea.dataset.language,
26 });
27 });
28 }
29});