All about programming stuff

by anvie

Adalah tool untuk mempermudah membuat project baru berdasarkan template yang ada, template bisa berasal dari Github repo.

sorce code ada di Reframe:

Disunting dari readme-nya:


> Because "don't repeat yourself"

If you need to build a project in matter of seconds, this tool for you.

Reframe Demo


Download binary file for your specific platform from release page.

Or, if you are Rust and Cargo user, type:

$ cargo install reframe


$ reframe [SOURCE]


$ reframe anvie/basic-rust

anvie/basic-rust is refering to my github repo: basic-rust.rf.

Build Template

To create Reframe template is super duper easy, all you needs is write file called Reframe.toml and place in root project dir, example:

name = "Hello World"
version = "1.0"

with_serde = { ask = "Dengan serde?", default = false }

serde_version = { ask = "Versi serde?", default = "1.0", if="with_serde" }

# without default value means required
author_name = { ask = "Author name?" }

author_email = { ask = "Author email?" }

Every string type param will have case variants automagically, eg: author_name will have: author_name_lowercase, author_name_snake_case, author_name_kebab_case.

After finish writing project template you can test using reframe [YOUR-WORKING-TEMPLATE-DIR], if all is ok, push to your github repo with additional postfix .rf at it repo name, eg: if your repo name is unicorn then you must push with name unicorn.rf, and finally you can use by simply typing:



$ reframe agus/unicorn

For more detail please see working example at anvie/basic-rust.rf.

Supported case variants:

  • *_lower_case -> my cool app
  • *_snake_case -> my_cool_app
  • *_kebab_case -> my-cool-app
  • *_shout_snake_case -> MY_COOL_APP
  • *_upper_case -> MY COOL APP
  • *_camel_case -> MyCoolApp