From f694638186676f061bee7a314700178471c1f524 Mon Sep 17 00:00:00 2001 From: RGBCube Date: Sat, 20 Jan 2024 17:33:18 +0300 Subject: [PATCH] Add initial Lume stuff --- .gitignore | 17 ++++++++++ _config.ts | 43 +++++++++++++++++++++++++ deno.json | 14 ++++++++ site/_includes/article.vto | 15 +++++++++ site/_includes/base.vto | 66 ++++++++++++++++++++++++++++++++++++++ site/_includes/cube.vto | 19 +++++++++++ site/about.md | 10 ++++++ site/blog/_data.ts | 4 +++ 8 files changed, 188 insertions(+) create mode 100644 .gitignore create mode 100644 _config.ts create mode 100644 deno.json create mode 100644 site/_includes/article.vto create mode 100644 site/_includes/base.vto create mode 100644 site/_includes/cube.vto create mode 100644 site/about.md create mode 100644 site/blog/_data.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8276bff --- /dev/null +++ b/.gitignore @@ -0,0 +1,17 @@ +* + +!site/ +!site/_includes/ +!site/blog/ + +!*.css +!*.md +!*.vto + +!*.png +!*.gif + +!.gitignore + +!*.json +!*.ts diff --git a/_config.ts b/_config.ts new file mode 100644 index 0000000..45ab8f8 --- /dev/null +++ b/_config.ts @@ -0,0 +1,43 @@ +import lume from "lume/mod.ts"; + +import codeHighlight from "lume/plugins/code_highlight.ts"; +import feed from "lume/plugins/feed.ts"; +import inline from "lume/plugins/inline.ts"; +import minifyHTML from "lume/plugins/minify_html.ts"; +import resolveUrls from "lume/plugins/resolve_urls.ts"; + +const site = lume({ + src: "./site", + location: new URL("https://rgbcu.be/"), +}); + +site.use(codeHighlight()); +site.use(inline()); +site.use(resolveUrls()); +site.use(minifyHTML()); + +site.use(feed({ + output: ["/blog/feed.rss"], + + query: "type=article", + sort: "date=desc", + + info: { + title: "RGBCube's Blog", + description: + "The webpage where RGBCube dumps his schizophrenic ramblings about software and all the likes.", + lang: "en", + generator: false, + }, + items: { + title: "=title", + description: "=description", + published: "=date", + content: "$ content", + lang: "en", + }, +})); + +site.copyRemainingFiles(); + +export default site; diff --git a/deno.json b/deno.json new file mode 100644 index 0000000..1d03e55 --- /dev/null +++ b/deno.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "jsx": "react-jsx", + "jsxImportSource": "npm:react" + }, + "tasks": { + "lume": "echo \"import 'lume/cli.ts'\" | deno run --unstable -A -", + "build": "deno task lume", + "serve": "deno task lume --serve" + }, + "imports": { + "lume/": "https://deno.land/x/lume@v2.0.3/" + } +} diff --git a/site/_includes/article.vto b/site/_includes/article.vto new file mode 100644 index 0000000..ba05869 --- /dev/null +++ b/site/_includes/article.vto @@ -0,0 +1,15 @@ +--- +layout: base.vto +type: article +--- + + + +
{{ content }}
+ + diff --git a/site/_includes/base.vto b/site/_includes/base.vto new file mode 100644 index 0000000..983aab3 --- /dev/null +++ b/site/_includes/base.vto @@ -0,0 +1,66 @@ +--- +description: null +color: null +type: null +tags: null +thumbnail: null + +# Required: +# title +--- + + + + + + + {{ title }} + + + + + {{ set description = description ?? "The official website and link portal of RGBCube and his work." }} + + + + + + + + + + + + + + + + + + + + {{ if tags }} + + + {{ /if }} + + {{ if date }} + + {{ /if }} + + {{ if thumbnail }} + + + + {{ else }} + + + {{ /if }} + + + + + + {{ content }} + + diff --git a/site/_includes/cube.vto b/site/_includes/cube.vto new file mode 100644 index 0000000..6ece079 --- /dev/null +++ b/site/_includes/cube.vto @@ -0,0 +1,19 @@ +--- +layout: base.vto +title: RGBCube + +# Required: +# faces +--- + +{{ set sides = ["front", "top", "back", "bottom", "right", "left"] }} + +
+
+ {{ for (let i = 0; i < sides.length; i++) }} +
+ {{ faces[i] }} +
+ {{ /for }} +
+
diff --git a/site/about.md b/site/about.md new file mode 100644 index 0000000..72f982a --- /dev/null +++ b/site/about.md @@ -0,0 +1,10 @@ +--- +title: About +layout: article.vto +date: 2024-01-24 +--- + +# Test 123 + +Testing deez +thats it. diff --git a/site/blog/_data.ts b/site/blog/_data.ts new file mode 100644 index 0000000..0b5b753 --- /dev/null +++ b/site/blog/_data.ts @@ -0,0 +1,4 @@ +export default { + layout: "article.vto", + title: "$ h1", +};