all repos — kushiyaki @ d9ad97c127b24fb66a08134f0fad6233ab7ae482

🍢 A tiny static site generator for grilling markdown files to perfection

chore
trickyni trickyniv56@gmail.com
Sat, 09 May 2026 18:32:56 +0300
commit

d9ad97c127b24fb66a08134f0fad6233ab7ae482

parent

1dffdbb23a3ff9aaeef10771ff64a06b3b937df3

3 files changed, 7 insertions(+), 6 deletions(-)

jump to
M .gitignore.gitignore

@@ -1,11 +1,11 @@

input out __TODO.md -design-document.md node_modules addons input_1 -deprecated input.bak __design-document.md deprecated +package.json +package.json
M insertJSX.jsinsertJSX.js

@@ -1,15 +1,15 @@

-import { visit } from "unist-util-visit"; import { select } from "hast-util-select"; /* * DONE filedata * DONE before/after * DONE multiple components - * TODO global data + * DONE global data * HACK deduplicate * HACK make the data validation more elegant */ export default function insertJSX(data = {}) { - const siteIndex = this.data("siteIndex"); + const siteIndex = this.data("siteIndex"); // calls siteIndex from the processor + return async (tree) => { if (data.before != undefined) { for (let x of [data.before].flat().reverse()) {

@@ -17,6 +17,7 @@ const fn = await import(`./input/templates/${x}.jsx`); //FIX avoid strict filestruct past "input"

tree.children.unshift(fn.default(data, siteIndex)); //TODO use select on "body" } } + if (data.after != undefined) { for (let x of [data.after].flat().reverse()) { const fn = await import(`./input/templates/${x}.jsx`); //FIX avoid strict filestruct past "input"
M package.jsonpackage.json

@@ -2,7 +2,7 @@ {

"name": "kushiyaki", "private": true, "scripts": { - "dev": "bun looper.js && caddy run" + "dev": "bun index.js && caddy run" }, "dependencies": { "@types/bun": "latest",