This is a Giter8 template for Finatra
sbt new forthy/finatra.g8
Giter8 will apply templating to the contents of src/main/g8, using the default.properties file within that directory as the prompts for templating.
Giter8 also supports scaffolding using the sbt-giter8-scaffold plugin. There are some intricacies to scaffolding to note:
src/main/scaffoldsis copied to the output directory as.g8- directories immediately below
src/main/scaffoldsare the templates available - scaffolding can have its own prompts, but Giter8 doesn't apply template replacements against scaffolds (otherwise, the output files would no longer be templates), so a templated
.g8/controllers/default.propertiesfile exists. - The property
namehas special meaning in Giter8, and is used to identify module outputs. For example a template defined withcontrolers/src/main/scala/$name$.scalaandname=pluginwill result in the outputplugin/controlers/src/main/scala/plugin.scala. This can be unintuitive, which is why it's documented here
Any files you don't want to have templating applied against can be defined in default.properties as regex in the space-delimited verbatim prompt.