Mascarpone 🧀

Interactive CLI tool for scaffolding Tiramisu game projects

Named after the Italian cream cheese used in tiramisu, Mascarpone provides a delightful TUI experience for creating new game projects with the Tiramisu game engine.

Installation

gleam add --dev mascarpone

Usage

Run the interactive project creator:

gleam run -m mascarpone

The TUI will guide you through:

  1. Lustre Integration: Choose whether to include Lustre for UI overlays (menus, HUDs, etc.)
  2. Project Template (Optional): Select from:
    • 2D Game - Orthographic camera and sprite setup
    • 3D Game - Perspective camera with lighting
    • Physics Demo - Physics-enabled objects
    • Skip - Don’t create template files (for existing projects)
  3. Desktop Bundle: Set up NW.js for desktop distribution

What It Creates

Mascarpone sets up your Tiramisu project with:

Features

After Creation

For Web Development

Run the dev server:

gleam run -m lustre/dev start

Then open http://localhost:1234 in your browser to see your game!

For Desktop Development (if NW.js bundling was selected)

Building Desktop Distributions

If you set up NW.js bundling during project creation, you can build platform-specific distributions with a single command:

gleam run -m mascarpone bundle

This command:

The built distributions will be available in the directory specified in your package.json (typically ../<project-name>_build/).

Using Mascarpone with Existing Projects

⚠️ Important: If you’re adding NW.js support to an existing project, make sure to skip the template selection when prompted. Selecting a template will overwrite your existing game code in src/!

License

MIT

Related

Search Document