Add projects page

This commit is contained in:
sepia 2025-08-02 18:46:45 -05:00
parent 232855e952
commit f2ddb2b5c5
4 changed files with 37 additions and 4 deletions

View File

@ -8,10 +8,6 @@
a living world
</li>
<li>building Pantalaimon, an AI agent system (coming soon)</li>
<li>
finishing up a little
<a href="https://gomoku.sepiatones.xyz">gomoku!</a> webapp
</li>
</ul>
<h3>Dormant Interests/Projects</h3>
<ul>

22
data/pages/projects.html Normal file
View File

@ -0,0 +1,22 @@
<article>
<h2>Projects</h2>
<ul>
<li>
<a href="gomoku.sepiatones.xyz">Gomoku!</a> - a simple multiplayer
implementation of the game Gomoku
</li>
<li>
<a href="civ.plus">Civ+</a> - a sandbox MMORPG where players build nations
</li>
<li>
<a href="https://git.sepiatones.xyz/sepia/sepiatones_xyz"
>sepiatones.xyz</a
>
- the website you're on
</li>
<li>
<a href="git.sepiatones.xyz/sepia/pantalaimon">Pantalaimon</a> - an AI
coding agent
</li>
</ul>
</article>

View File

@ -35,6 +35,20 @@ const app = new Elysia()
return "Internal server error";
}
})
.get("/projects", async ({ set }) => {
try {
const content = await fs.readFile(
path.join(process.cwd(), "data/pages/projects.html"),
"utf8",
);
return renderTemplate("index.html", { content });
} catch (error) {
console.error("Error serving main page: ", error);
set.status = 500;
set.headers["Content-Type"] = "text/plain";
return "Internal server error";
}
})
.get("/posts/:post_name", async ({ params, set }) => {
try {
const filePath = path.join(

View File

@ -13,6 +13,7 @@
<h1>sepiatones.xyz</h1>
<nav>
<a href="/">about</a>
<a href="/projects">projects</a>
<a href="https://git.sepiatones.xyz/sepia">code</a>
<a
hx-get="/recent_posts"