# Moonlit Forge Studio

Moonlit Forge Studio is an indie game studio website and community hub for showcasing games, devlogs, press materials, and studio updates. The project is built as a lightweight, content-driven site that can be deployed as a static frontend or connected to a headless CMS.

## Overview

This repository contains the public website for Moonlit Forge Studio. It is designed for a small team shipping original narrative and systems-driven games, with pages for current projects, team information, media kits, release notes, and newsletter signups.

## Features

- Studio landing page with featured game highlights
- Game detail pages with trailers, screenshots, platforms, and release status
- Devlog and announcement support
- Press kit section with downloadable assets
- Newsletter signup integration
- Configurable social links and storefront URLs
- Responsive layout for desktop, tablet, and mobile
- SEO-ready metadata for games, posts, and studio pages

## Install

Clone the repository:

```bash
git clone https://github.com/moonlit-forge/studio-site.git
cd studio-site
```

Install dependencies:

```bash
npm install
```

Create a local environment file:

```bash
cp .env.example .env.local
```

Start the development server:

```bash
npm run dev
```

The site will be available at:

```text
http://localhost:3000
```

## Usage

Run the local development server:

```bash
npm run dev
```

Build the production version:

```bash
npm run build
```

Preview the production build locally:

```bash
npm run preview
```

Run lint checks:

```bash
npm run lint
```

Add or update studio content in the `content/` directory:

```text
content/
  games/
  posts/
  press/
  team/
```

Each game entry includes metadata for title, platforms, release date, store links, trailer URL, screenshots, and short description.

## Configuration

Configuration is handled through environment variables and project content files.

Required environment variables:

```env
SITE_URL=https://moonlitforge.games
STUDIO_NAME=Moonlit Forge Studio
NEWSLETTER_PROVIDER=buttondown
NEWSLETTER_API_KEY=
```

Optional environment variables:

```env
CONTACT_EMAIL=press@moonlitforge.games
STEAM_PUBLISHER_URL=
ITCHIO_PROFILE_URL=
DISCORD_INVITE_URL=
YOUTUBE_CHANNEL_URL=
BLUESKY_PROFILE_URL=
```

Main site settings can be edited in:

```text
config/site.json
```

Example:

```json
{
  "studioName": "Moonlit Forge Studio",
  "tagline": "Small worlds, strange systems, memorable stories.",
  "defaultLocale": "en",
  "theme": {
    "colorMode": "dark",
    "accentColor": "#ffb347"
  }
}
```

Game-specific configuration lives alongside each game entry:

```text
content/games/emberfall.json
```

Example:

```json
{
  "title": "Emberfall",
  "status": "in-development",
  "platforms": ["PC", "Steam Deck"],
  "releaseWindow": "2026",
  "storeLinks": {
    "steam": "https://store.steampowered.com/app/example",
    "itch": "https://moonlitforge.itch.io/emberfall"
  }
}
```