Overview¶
qwikstart: Code generator for fun and profit¶
Documentation: https://qwikstart.readthedocs.io
qwikstart
is a code generator for integrating code into existing projects. It’s
similar to code generators like cookiecutter, yeoman, and hygen but with a focus on
adding code to existing projects.
A simple hello-world.yml
script in qwikstart would look something like:
steps:
"Ask for name":
name: prompt
inputs:
- name: "name"
default: "World"
"Display message":
name: echo
message: |
Hello, {{ qwikstart.name }}!
The first step uses the prompt
operation with a single input "name"
, with a default
value of "World"
(which is editable when running the script). The next step just uses
the echo
operation to display a message. This script can be using qwikstart run
:
$ qwikstart run hello-world.yml
Please enter the following information:
name: World
Hello, World!
Install¶
The recommended way of installing qwikstart
is to use pipx:
pipx install qwikstart
If you happen to be setting up pipx for the first time, the
pipx installation instructions suggest running pipx ensurepath
to update
the user path. Note, if you use ~/.profile
instead of ~/.bash_profile
,
this will add ~/.bash_profile
, which will take precendence over ~/.profile
.
Either move the code from ~/.bash_profile
to ~/.profile
or
link your profiles.
Basic Usage¶
After installing qwikstart
, you can run a simple hello-world example using the
following:
$ qwikstart run --repo https://github.com/tonysyu/qwikstart examples/hello_world.yml
By default, there are abbreviations for common git repos, so the above can also be written:
qwikstart run --repo gh:tonysyu/qwikstart examples/hello_world.yml
See Also¶
There are a lot code generators and scaffolding tools out there, and the following is just a selection of some of the most popular ones:
cookiecutter: A command-line utility that creates projects from cookiecutters (project templates)
hygen: The scalable code generator that saves you time.
yeoman: The web’s scaffolding tool for modern webapps