Package: boilee
An easy way to create a tool to generate code boilerplates likenpm initandvue createfor any programming and markup language.FeaturesCross-platform: You can use it on Windows, Mac and Linux, and…You don’t need to have Python installed!Simple and beautiful command line interface!Manipulate files with template engine: Only knowing a model engine can create boilers for any programming and markup language. Currently…Jinja, Mako and Genshi are supported!Manipulate files with template engine and YAML: You can choose which files and directories will be written and define their content intuitively with a YAML fileComplete: You have several options to manipulate from input and arguments to commands to be executed and the behavior of the template engineYou can add boilerplates to use offline, just run:boilee add <boilerplate-name>The outputs are true complete cli’s: The boilers generated can receive arguments, receive inputs, show help, show boilerplate information, get information from the system and execute commands. This makes them true cli’s, as well asnpm initandvue-create.Boilee or CookiecutterThis project was not created with the intention of being a competitor of cookiecutter, but it has some advantages in relation to it, just look at items 2, 3, 5, 6, 7, 8 and 9 of the list above.InstallationObtain the executableYou can get here the executables forWindows,LinuxandMac OSInstalling via pipYou can install boilee via pip on your system (or on a venv) with the following command:pipinstallboileeInstalling from source codeTo get the executable from the source see theBuildsectionUsage# Create a zip file that contains all the information of the boilerplate:boileemake<input-directory><boilerplate-name># Generate boilerplateboileerun<input-file><output-directory>[...boilerplate-options]QuickStartCreate the following files:# example_boilerplate/project/scripts/python3.pydefmain():print("Message from Python 3:")print("{{ message }}")if__name__=="__main__":main()# example_boilerplate/project/scripts/python2.pydefmain():print"Message from Python 2:"print"{{ message }}"if__name__=="__main__":main()# example_boilerplate/.boilee/structure.yml-{{project_name}}@content="project":# Creates a directory with a name provided by the user with the content of the "project" directory-scripts:# "scripts" directory-python{{ python-version }}.py# example_boilerplate/.boilee/parameters.ymlproject_name:input-type:inputparameter_type:argumentmessage:Enter the project namepython-version:input-type:listmessage:Select a Python versionchoices:-Python 3:value:3-Python 2:value:2message:input-type:inputmessage:Enter a messageCreate a zip file that contains all the information of the boilerplate:boileemakeexample_boilerplateexampleGenerate boilerplate and test:boileerunexample.zipexample_python3--python-version=3--message=Hi!python3example_python3/scripts/python3.py# ResultMessagefromPython3:Hi!boileerunexample.zipexample_python2--python-version=2--message=Hi!python2example_python2/scripts/python2.py# ResultMessagefromPython2:Hi!If a parameter is not provided it will be requested later.DevelopmentTo open this project in a development environment see thePreparation sectionin theContributor GuidelinesYou can also open this project in an automated development environment in gitpod:ContributingSeeContributor GuidelinesBuildBy default boilee usespyoxidizerto generate an executable.To generate an executable with pyoxidizer (if pyoxidizer is already installed) run the command:pyoxidizerbuildThe executable will be generated inside the “build” directoryLicenseGNU General Public License v3.0