This commit is contained in:
@@ -1,36 +1,74 @@
|
||||
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
|
||||
# Highland Games Studio — Website
|
||||
|
||||
## Getting Started
|
||||
Marketing and devblog site for Highland Games Studio. _Where summits become worlds._
|
||||
|
||||
First, run the development server:
|
||||
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
|
||||
# or
|
||||
yarn dev
|
||||
# or
|
||||
pnpm dev
|
||||
# or
|
||||
bun dev
|
||||
```
|
||||
|
||||
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
|
||||
Open [http://localhost:3000](http://localhost:3000).
|
||||
|
||||
You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
|
||||
## Scripts
|
||||
|
||||
This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
|
||||
| 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 |
|
||||
|
||||
## Learn More
|
||||
To regenerate the favicon from the studio logo (requires `sharp`):
|
||||
|
||||
To learn more about Next.js, take a look at the following resources:
|
||||
```bash
|
||||
node scripts/build-favicon.mjs
|
||||
```
|
||||
|
||||
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
|
||||
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
|
||||
## Project structure
|
||||
|
||||
You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
|
||||
```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)
|
||||
```
|
||||
|
||||
## Deploy on Vercel
|
||||
## Configuration
|
||||
|
||||
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
|
||||
- **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`.
|
||||
|
||||
Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
|
||||
## 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).
|
||||
|
||||
Reference in New Issue
Block a user