Skip to content
A Substrate runtime module to benchmark different design patterns
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This is a template for a Substrate runtime module which lives as its own crate so it can be imported into multiple other runtimes. It is based on the "template" module which is included with the Substrate node template.

Check out the HOWTO to learn how to use this for your own runtime module.

This README should act as a general template for distributing your module to others.


This module acts as a template for building other runtime modules.

It currently allows a user to put a u32 value into storage, which triggers a runtime event.



This module does not depend on any externally defined traits.


This module does not depend on any other SRML or externally developed modules.


Runtime Cargo.toml

To add this module to your runtime, simply include the following to your runtime's Cargo.toml file:

default_features = false
git = ''

and update your runtime's std feature to include this module:

std = [


You should implement it's trait like so:

/// Used for the module test_module
impl substrate_module_template::Trait for Runtime {
	type Event = Event;

and include it in your construct_runtime! macro:

ExampleModule: substrate_module_template::{Module, Call, Storage, Event<T>},

Genesis Configuration

This template module does not have any genesis configuration.

Reference Docs

You can view the reference docs for this module by running:

cargo doc --open

or by visiting this site:

You can’t perform that action at this time.