# 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 ```bash npm install npm run dev ``` Open [http://localhost:3000](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`): ```bash node scripts/build-favicon.mjs ``` ## Project structure ```text 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_URL` per environment (used by metadata, sitemap, robots, RSS and JSON-LD). Defaults to `https://highlandgamesstudio.com` — see `lib/site.ts`. ## Adding a devblog post Create a file in `content/devblog/`, e.g. `2026-06-01-my-post.mdx`: ```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).