generated from nhcarrigan/template
41 lines
1.5 KiB
JavaScript
41 lines
1.5 KiB
JavaScript
import { writeFile } from "node:fs/promises";
|
|
import { join } from "node:path";
|
|
|
|
const fileReq = await fetch('https://cdn.nhcarrigan.com?prefix=koikatsu');
|
|
const files = await fileReq.text();
|
|
const keys = files.matchAll(/<Key>(.*?)<\/Key>/g);
|
|
const keyNames = [...keys].map((key) => key[1]?.replace("koikatsu/", "")).filter(key => key);
|
|
const keyHtml = keyNames.map((key) => `<div
|
|
style="
|
|
height: 300px;
|
|
width: 300px;
|
|
border: 2px solid var(--foreground);
|
|
"
|
|
>
|
|
<a href="https://cdn.nhcarrigan.com/koikatsu/${key}" target="_blank">
|
|
<img
|
|
style="height: 250px; max-width: 250px; object-fit: contain"
|
|
src="https://cdn.nhcarrigan.com/koikatsu/${key}"
|
|
alt="Digital art of Naomi."
|
|
/>
|
|
</a>
|
|
</div>`);
|
|
|
|
const html = `<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<title>NHCarrigan</title>
|
|
</head>
|
|
<body>
|
|
<main>
|
|
<h1>Naomi</h1>
|
|
<p>For an interactive 3D reference, visit <a href="https://hub.vroid.com/en/characters/6033404747153826650/models/3483506204509065121" target="_blank" rel="noopener noreferrer">VRoid Hub</a>.</p>
|
|
<section style="display: grid; grid-template-columns: 1fr 1fr 1fr">
|
|
${keyHtml.join('')}
|
|
</section>
|
|
</main>
|
|
</body>
|
|
<script src="https://cdn.nhcarrigan.com/headers/index.js"></script>
|
|
</html>`;
|
|
|
|
await writeFile(join(import.meta.dirname, "site", "koikatsu.html"), html, "utf-8"); |