The official documentation site for ScaffScript, a minimal superset of GML (GameMaker Language) that adds a TypeScript-like module system.
| 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 |
.
├── 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.
Found a typo, broken link, or something missing? Contributions are welcome!
npm install -g pnpm-
Fork & clone the repository
git clone https://github.com/undervolta/scaffscript-docs.git cd scaffscript-docs -
Install dependencies
pnpm install
-
Start the dev server
pnpm dev
The site will be available at http://localhost:4321. Changes to .md/.mdx files hot-reload instantly.
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.
- Create a branch:
git checkout -b fix/your-change - Commit your changes with a clear message
- Push and open a pull request against the
masterbranch 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.