Skip to content

undervolta/scaffscript-docs

Repository files navigation

ScaffScript Docs

Built with Starlight

The official documentation site for ScaffScript, a minimal superset of GML (GameMaker Language) that adds a TypeScript-like module system.

What's Covered

Section Description
Getting Started Introduction, setup guide, and project structure
Configuration All scaff.config.* fields and their defaults
Guides Your first script, working with modules, GameMaker workflow, real-world examples
Reference Module system, code generation, CLI, class system, content directives, file scanning, GM integration, special values
Appendix GML event names, supported platform flags

Project Structure

.
├── public/
├── src/
│   ├── assets/
│   ├── components/
│   ├── content/
│   │   └── docs/
│   │       ├── appendix/
│   │       ├── configuration/
│   │       ├── getting-started/
│   │       ├── guides/
│   │       └── reference/
│   └── content.config.ts
├── astro.config.mjs
├── package.json
└── tsconfig.json

Docs pages live under src/content/docs/ as .md or .mdx files. Each file maps to a route based on its path.

Contributing

Found a typo, broken link, or something missing? Contributions are welcome!

Prerequisites

npm install -g pnpm

Local Setup

  1. Fork & clone the repository

    git clone https://github.com/undervolta/scaffscript-docs.git
    cd scaffscript-docs
  2. Install dependencies

    pnpm install
  3. Start the dev server

    pnpm dev

The site will be available at http://localhost:4321. Changes to .md/.mdx files hot-reload instantly.

Making Changes

All docs pages live under src/content/docs/ as .md or .mdx files. Pick the relevant subfolder for the page you're editing:

Folder What goes here
getting-started/ Introduction, setup, project structure
guides/ Step-by-step walkthroughs
configuration/ Config field reference
reference/ Language/API reference pages
appendix/ GML event names, platform flags, etc.

Tip

Every page rendered on the site has an Edit page link in the footer that takes you directly to the file on GitHub.

Submitting a PR

  1. Create a branch: git checkout -b fix/your-change
  2. Commit your changes with a clear message
  3. Push and open a pull request against the master branch on the scaffscript-docs repository

For bigger changes (new pages, restructuring), open an issue first so we can align before you write a ton of content.