[meta] — Generative Applications

flyboarder
degree9
Published in
1 min readAug 2, 2017
[meta]

[meta] A stack. A framework. A conversation.

Today we get more technical and expand on how Declarative Applications are implemented. The basis of this is our Generative Application layer, which provides a mechanism for generating namespaces.

The generation process looks like this:

Template + Configuration = Namespacesrc/app.mustache + src/app.edn = src/app.cljs

[meta] uses a list of application namespaces which to check for. It searches the project for both template and configuration files which are used to generate the final ClojureScript namespace, if none can be found default templates are used.

This is similar to the Declarative Application layer with the exception that templates can be used within the project to change the application logic.

Most applications will not require the Generative Application layer past the first few development iterations, after which you can bypass the namespace generating process by providing your own or a namespace that has been previously generated. By providing a static namespace instead you can speed the [meta] build process.

You can try [meta] and checkout the README over at GitHub.

--

--