• Astro 34.1%
  • TypeScript 20.7%
  • MDX 16%
  • C 14%
  • CSS 11.6%
  • Other 3.6%
Find a file
Kevin d'Orange a31b516135 Modify domain
2026-05-18 10:20:38 +02:00
.vscode Initial commit from Astro 2025-08-06 12:40:00 +02:00
public Modify domain 2026-05-18 10:20:38 +02:00
src Modify domain 2026-05-18 10:20:38 +02:00
.editorconfig Initial commit from Astro 2025-08-06 12:40:00 +02:00
.example.env Initial commit from Astro 2025-08-06 12:40:00 +02:00
.gitignore . 2025-08-06 15:48:12 +02:00
.nvmrc Initial commit from Astro 2025-08-06 12:40:00 +02:00
.prettierignore Initial commit from Astro 2025-08-06 12:40:00 +02:00
.prettierrc.js Initial commit from Astro 2025-08-06 12:40:00 +02:00
astro.config.ts Moonlander 2026-01-05 22:50:21 +01:00
biome.json Initial commit from Astro 2025-08-06 12:40:00 +02:00
LICENSE Initial commit from Astro 2025-08-06 12:40:00 +02:00
maze.c Add maze game 2026-04-30 14:04:03 +02:00
package-lock.json Add maze game 2026-04-30 14:04:03 +02:00
package.json Moonlander 2026-01-05 22:50:21 +01:00
pnpm-lock.yaml Moonlander 2026-01-05 22:50:21 +01:00
README.md Modify domain 2026-05-18 10:20:38 +02:00
tailwind.config.ts Initial commit from Astro 2025-08-06 12:40:00 +02:00
tsconfig.json Initial commit from Astro 2025-08-06 12:40:00 +02:00

Codework Orange

A personal blog and portfolio website focused on game development, featuring interactive WebAssembly games and technical articles about game engine creation.

Live site: codework-orange.com

Tech Stack

  • Astro - Static site generator
  • React - Interactive components
  • TypeScript - Type safety
  • Tailwind CSS - Styling
  • MDX - Enhanced markdown for posts
  • Pagefind - Client-side search
  • WebAssembly - Embedded games built with the Banjo framework

Getting Started

Prerequisites

  • Node.js 22 (see .nvmrc)
  • pnpm 9.0.0+

Installation

pnpm install

Development

pnpm dev

Build

pnpm build

Preview

pnpm preview

Project Structure

src/
├── assets/          # Images and static assets
├── components/      # Astro and React components
├── content/
│   ├── post/        # Blog posts (MD/MDX)
│   ├── note/        # Short notes
│   └── tag/         # Tag metadata
├── layouts/         # Page layouts
├── pages/           # Routes
├── plugins/         # Custom remark/rehype plugins
├── styles/          # Global styles
└── utils/           # Utility functions

public/
├── games/           # Compiled WASM game files
└── icons/           # Favicons and app icons

Creating Content

Blog Post

Add a new .md or .mdx file in src/content/post/:

---
title: "Post Title"
description: "Brief description"
publishDate: "2025-01-01"
tags: ["gamedev", "banjo"]
draft: false
---

Your content here...

Note

Add a new .md or .mdx file in src/content/note/ with similar frontmatter.

Scripts

Command Description
pnpm dev Start development server
pnpm build Build for production
pnpm preview Preview production build
pnpm lint Run Biome linter
pnpm format Format code
pnpm check TypeScript check

Deployment

Automatically deployed to GitHub Pages on push to main via GitHub Actions.

License

MIT