runme icon indicating copy to clipboard operation
runme copied to clipboard

Cascading "isomorphic" configuration (consistent config schema for annotations & frontmatter & CLI)

Open mxsdev opened this issue 2 years ago • 0 comments

As we start expanding frontmatter, I am noticing that our configuration story is becoming increasingly fragmented (cli, frontmatter, annotations, all with their own schema). This will only get worse as we add more frontmatter keys, and if we ever add file configuration.

I think that eventually, it would be nice to have an "isomorphic" configuration structure where every configuration uses the same schema. Think like mocha/vitest, where you have some .mocharc file for base configuration, and the CLI flags use the same schema, cascading over that.

For runme, we could have .runmerc files that scope per-directory, CLI that scopes per-run, frontmatter that scopes per-file, and annotations that scope per-block, all using the same configuration schema.

mxsdev avatar May 25 '23 18:05 mxsdev