2.2 KiB
2.2 KiB
Highland Games Studio — Website
Marketing and devblog site for Highland Games Studio. Where summits become worlds.
Built with Next.js 16 (App Router), React 19, Tailwind CSS 4 and Framer Motion.
Devblog posts are authored in MDX and rendered with next-mdx-remote.
Getting started
npm install
npm run dev
Open http://localhost:3000.
Scripts
| Command | Description |
|---|---|
npm run dev |
Start the dev server |
npm run build |
Production build |
npm run start |
Serve the production build |
npm run lint |
Run ESLint |
To regenerate the favicon from the studio logo (requires sharp):
node scripts/build-favicon.mjs
Project structure
app/ Routes, layouts, server actions, metadata (sitemap/robots/feed/OG)
app/components/ Shared UI (Navbar, Footer, forms, social links)
content/devblog/ Devblog posts as .mdx (frontmatter: title, date, excerpt, tags, game)
lib/ Data + helpers (games registry, devblog loader, site URL)
public/ Static assets (studio logos, hero video)
scripts/ One-off build scripts (favicon generation)
Configuration
- Site URL — set
NEXT_PUBLIC_SITE_URLper environment (used by metadata, sitemap, robots, RSS and JSON-LD). Defaults tohttps://highlandgamesstudio.com— seelib/site.ts.
Adding a devblog post
Create a file in content/devblog/, e.g. 2026-06-01-my-post.mdx:
---
title: "My post title"
date: "2026-06-01"
excerpt: "One-line summary for listings and SEO."
author: "Highland Games Studio"
tags: ["devlog"]
game: "project-one"
---
Your MDX content here.
Deployment
Pushes to master deploy to the VPS via the GitHub Actions workflow
(.github/workflows/deploy.yml), which SSHes in, pulls, builds, and restarts the
PM2 process. Requires the SSH_* repository secrets.
Known TODOs
- Wire the contact and newsletter forms to a real email provider (currently log-only).
- Replace placeholder content (game, team members, social links).