ModsFinder

AstraTemplate

by makeevrserg

AstraTemplate is a Kotlin starter template for building one codebase that targets Paper, Forge and Fabric servers and clients.

FabricForgeMIT LicenseOpen source1.15.2 – 1.21.3

What it does

The template is organized as modules with a lifecycle-driven architecture, so one shared codebase runs across Paper, Forge and NeoForge. Only the instance module knows about a specific platform, and it builds a fat jar with ShadowJar. Every other module is either platform-agnostic or clearly named as a platform variant. The core module provides config, translations and coroutine scopes, and other modules depend on it.

Developers can use the template as a base for their own plugins or mods. Config is stored as a typed object in config.yml, translations work the same way through translation.yml, and a default value works out of the box when the files are present. A local database layer built on Exposed ORM switches between H2, SQLite, MySQL and MariaDB through a single line of config, and a Ktor-based REST client shows how to fetch data from an external HTTP endpoint, returning Result values instead of throwing errors.

Required dependencies are Fabric API and Fabric Language Kotlin. The project is released under the MIT License and is open source. Files are published for Fabric and Forge across 28 release versions, 1.15.2 – 1.21.3, and the latest builds for both loaders are 8.0.0-alpha01 for 1.21, an alpha channel release dated 2025-11-07.

Key features

  1. Modular lifecycle architecture

    Modules follow a lifecycle-driven structure, separating platform-agnostic code from named platform variants.

  2. Typed configuration

    A typed object is written to config.yml, and a reloadable state flow lets changes apply without a restart.

  3. Local database access

    Suspend CRUD functions over user tables sit on Exposed ORM, with the connection chosen from config at runtime.

  4. Cross-platform commands

    Commands are defined once with the Brigadier DSL and adapted to each platform at the root module level.

  5. Paginated chest GUI

    A Bukkit chest GUI is driven by a state flow and re-renders automatically whenever its state changes, with stubs for other platforms.

Compatibility

Latest build for each game version and loader.

1.21.x4 of 4 versions with builds
1.21.37.7.17.7.1
1.21.27.7.17.7.1
1.21.17.7.17.7.1
1.218.0.0-alpha018.0.0-alpha01
1.20.x7 of 7 versions with builds
1.20.68.0.0-alpha018.0.0-alpha01
1.20.58.0.0-alpha018.0.0-alpha01
1.20.48.0.0-alpha018.0.0-alpha01
1.20.38.0.0-alpha018.0.0-alpha01
1.20.28.0.0-alpha018.0.0-alpha01
1.20.18.0.0-alpha018.0.0-alpha01
1.208.0.0-alpha018.0.0-alpha01
1.19.x5 of 5 versions with builds
1.19.48.0.0-alpha018.0.0-alpha01
1.19.38.0.0-alpha018.0.0-alpha01
1.19.28.0.0-alpha018.0.0-alpha01
1.19.18.0.0-alpha018.0.0-alpha01
1.198.0.0-alpha018.0.0-alpha01
1.18.x3 of 3 versions with builds
1.17.x2 of 2 versions with builds
1.16.x6 of 6 versions with builds
ReleaseBetaAlphaNot available

Only full game releases are shown. This mod publishes no snapshot builds.

Requirements

Dependencies declared by the latest file for each loader.

Required 2

Fabric APILightweight and modular API providing common hooks and intercompatibility measures utilized by mods using the Fabric toolchain.
Required
Fabric Language KotlinThis is a mod that enables usage of the Kotlin programming language for Fabric mods.
Required

Use cases

Who it’s for: The template suits Kotlin developers who write Minecraft plugins or mods for more than one server or loader and want shared configuration, translations, database access and commands in one codebase.

Questions

Does AstraTemplate need Fabric API on Forge?

No. Fabric API and Fabric Language Kotlin are required dependencies for the Fabric files, while the Forge builds are published separately for 1.15.2 – 1.21.3.

Which databases does the local module support?

The local database layer supports H2, SQLite, MySQL and MariaDB, and the connection is switched with a one-line configuration change.

Is the template stable for production use?

The latest published build is 8.0.0-alpha01 for 1.21, which uses an alpha channel, so developers should check the code before relying on it.

In the catalog

AstraTemplate is one of 4,058 Storage mods on ModsFinder, and one of 2,474 Storage mods for Fabric. 13,252 mods support Minecraft 1.21.3.

More from makeevrserg

All projects

Similar mods

What the author says

A production-grade Minecraft plugin/mod template written in Kotlin. Provides a modular, lifecycle-driven architecture that runs across Paper, Forge, and NeoForge from a single shared codebase. Each instances/ builds a fat jar via ShadowJar and is the only place that knows about a specific platform. Everything in…
makeevrserg, on the Modrinth page

Official listing

Owner
makeevrserg
Published
2023-04-21
Updated on Modrinth
2025-11-07
Facts verified
2026-10-15

Tags