Mibo.Templates 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet new install Mibo.Templates@1.0.0
                    
This package contains a .NET Template Package you can call from the shell/command line.

Mibo

Mibo is a lightweight, Elmish-inspired micro-framework for F# that helps you build games on top of MonoGame (the underlying game framework). It’s designed to stay fun for small games while still providing an upgrade path for bigger projects (ARPG/RTS-style complexity) without forcing you to rewrite your engine.

Key ideas:

  • Keep update pure (MVU)
  • Submit render commands to a RenderBuffer in view
  • Use explicit boundaries (tick ownership, phases, snapshot barriers) when scaling up

If you prefer learning by example, check out the working sample projects:

  • src/Sample (2D sample)
  • src/3DSample (3D sample)

What’s in the box?

  • Elmish runtime for MonoGame games (MVU loop)
    • optional fixed timestep support
    • optional frame-bounded dispatch for stricter frame boundaries
  • Input (raw input + semantic mapping / rebinding-friendly)
  • Assets (loading + caching helpers)
  • Rendering
    • 2D SpriteBatch renderer (layers + multi-camera amenities)
    • 3D renderer with opaque/transparent passes + multi-camera amenities
    • Sprite3D “90% path” for unlit textured quads and billboards
    • escape hatches (DrawCustom) when you need custom GPU work
  • Camera helpers + culling utilities

Documentation

The docs live in docs/ and are intended to be the authoritative reference.

Start here:

  • Architecture
    • Elmish runtime: docs/elmish.md
    • System pipeline (phases + snapshot): docs/system.md
    • Scaling ladder (Simple → Complex): docs/scaling.md
  • Core services
    • Input: docs/input.md
    • Assets: docs/assets.md
  • Rendering
    • Overview / composition: docs/rendering.md
    • 2D: docs/rendering2d.md
    • 3D: docs/rendering3d.md
    • Camera: docs/camera.md

Getting started (Windows)

Prerequisites:

  • .NET SDK 10 (the samples target net10.0)
  • A working OpenGL setup (MonoGame DesktopGL)

From the repo root:

dotnet --version
dotnet tool restore
dotnet restore
dotnet build
dotnet test

Run the samples

2D sample:

dotnet run --project .\src\Sample\MiboSample.fsproj

3D sample:

dotnet run --project .\src\3DSample\3DSample.fsproj

Content pipeline tooling

This repo uses local dotnet tools (see .config/dotnet-tools.json) for MonoGame content:

  • mgcb / mgcb-editor-*

If you need to edit a content project:

dotnet tool restore
dotnet mgcb-editor-windows

Build the documentation site (optional)

The repo uses fsdocs-tool.

dotnet tool restore
dotnet fsdocs build

To watch locally while editing:

dotnet tool restore
dotnet fsdocs watch

Repo structure

  • src/Mibo — the core framework library
  • src/Mibo.Tests — unit tests
  • src/Sample — 2D sample game
  • src/3DSample — 3D sample game
  • docs/ — documentation source

Feedback welcome

If you’re interested in using F# beyond simple 2D games—while still staying in the MonoGame ecosystem—issues and PRs are very welcome.

  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.0.0 93 10/7/2026
5.0.0 155 9/5/2026
4.1.0 200 8/16/2026
4.0.0 190 8/7/2026
3.1.1 227 7/20/2026
3.1.0 213 7/20/2026
3.0.0 217 7/18/2026
2.1.0 230 7/11/2026
2.0.2 226 7/9/2026
2.0.1 237 7/9/2026
2.0.0 222 7/9/2026
2.0.0-rc-002 222 7/7/2026
2.0.0-rc-001 231 7/2/2026
1.4.0 441 1/29/2026
1.3.0 408 1/20/2026
1.2.0 409 1/19/2026
1.1.0 428 1/11/2026
1.0.1 419 1/9/2026
1.0.0 415 1/9/2026