Skip to content

flixelgdx/flixelgdx-website

Repository files navigation

flixelgdx-website

The website for the powerful Java game development framework FlixelGDX. Built with Docusaurus 3 and styled to feel like a GitHub-flavoured Javadoc page, with red and pitch-black as the primary colors.

It hosts:

  • A welcoming home page with feature highlights, animations, and per-section scroll fades.
  • A Getting Started page with a client-side project generator that produces a runnable Gradle project (Java / Groovy / Kotlin, IDE-specific configs, JitPack-wired FlixelGDX dependency, your choice of JDK vendor, bundled Gradle wrapper, expert-mode for power users).
  • A Your First Project tutorial — build Pong step by step, with a per-OS JDK install walk-through up top and synchronized Java / Groovy / Kotlin code tabs throughout.
  • An API reference generated from the framework's Java sources via Dokka GFM and embedded as Docusaurus docs.

Repository layout

.
├── gradlew                  ← bundled Gradle wrapper (no system Gradle needed)
├── gradlew.bat
├── gradle/wrapper/          ← gradle-wrapper.jar + properties (pinned to 9.5.1)
├── settings.gradle.kts      ← Gradle root settings (includes :dokka)
├── build.gradle.kts         ← (empty; real work lives in :dokka)
├── dokka/
│   └── build.gradle.kts     ← Dokka GFM build that auto-discovers framework modules
├── scripts/
│   └── build-api.sh         ← sparse-clones flixelgdx/flixelgdx + runs :dokka:dokkaGfm
├── site/                    ← Docusaurus 3 project (npm)
│   ├── docs/                ← hand-written docs (getting-started, your-first-project)
│   ├── api/                 ← Dokka GFM output (generated by build-api.sh)
│   ├── src/components/      ← React components (project generator, JDK guide, …)
│   ├── src/pages/index.tsx  ← home page
│   └── package.json
└── .github/workflows/
    ├── deploy.yml            ← builds + deploys to GitHub Pages
    └── framework-trigger.md  ← snippet to drop into the framework repo

Prerequisites

  • Node.js 20+ — the website uses Docusaurus 3.10, which requires Node ≥ 20. Run nvm use from the repo root to switch (an .nvmrc is included).
  • JDK 17+ — needed by the bundled Gradle wrapper to render the API reference. We recommend Eclipse Temurin on contributor machines.

You do not need to install Gradle, Dokka, or the FlixelGDX framework — ./gradlew does that for you on demand.

Local development

Run the website

cd site
npm ci           # 0 vulnerabilities, ~2 min on first run
npm run start    # http://localhost:3000/flixelgdx-website/

Regenerate the API reference

./scripts/build-api.sh

This will:

  1. Sparse-clone the FlixelGDX framework's Java sources into build/flixelgdx-src/ (≈ 3 MB — only the flixelgdx-*/src/main directories, never the full repo).
  2. Run ./gradlew :dokka:dokkaGfm against those sources, producing GitHub-Flavoured Markdown under build/dokka-out/.
  3. Sanitize the Markdown for MDX (escape stray { / }, self-close <br>, prepend Docusaurus front-matter) and copy it under site/api/.

Knobs:

FLIXELGDX_BRANCH=somebranch   ./scripts/build-api.sh
FLIXELGDX_REF=<commit-sha>    ./scripts/build-api.sh
FLIXELGDX_REPO=<git-url>      ./scripts/build-api.sh

To run only the Dokka half (when you have your own framework checkout):

./gradlew :dokka:dokkaGfm -PflixelgdxSrc=/abs/path/to/flixelgdx

Production build

cd site
npm run build       # → site/build/
npm run serve       # preview the static output locally

Opening in IntelliJ IDEA

Just open the repo root. IntelliJ detects the settings.gradle.kts file and offers to import the Gradle project — accept. The :dokka:dokkaGfm task then shows up in the Gradle tool window and can be run with a double-click.

The Node side stays a regular Docusaurus project; open the site/ folder as a Node module in WebStorm if you prefer dedicated JS tooling.

Deployment

The site is deployed automatically to GitHub Pages from .github/workflows/deploy.yml. It rebuilds on:

  • Any push to this repo's main branch.
  • A repository_dispatch event of type framework-updated (sent by the framework repo whenever master is updated — see .github/workflows/framework-trigger.md).
  • Manual workflow_dispatch invocations.
  • A daily cron fallback.

License

The website content is licensed MIT, matching the framework.

About

The website for the powerful Java game development framework FlixelGDX

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors