New starter kit structure (v3)
The current starter kit is very bulky and unflexible to use, customize and configure. So we should revamp the structure a bit to make it easier to understand and use. A few things that I've noticed:
-
We offer a typesafe way to configure appchains, however the starter kit uses environment variables to set those values, leading to a ton of variables and a lot of overhead since those need to be propagated to the actual configuration API is a cumbersome way. Some solutions: Allow the Appchain configure API to consume env variables directly Remove env variables entirely (with the exception of docker-related stuff) and use configurations directly
-
We toggle settlement functionality using a conditional modules record creation - we should make this cleaner (and introduce typesafety back in)
The general direction I want to move in: Separate the modules definition and the configuration values in a way that can be composed flexibly and directly with each other. Use the CLI for this composition and in addition to that, use it for script executio and environment selection