Draft: Laucans/cli scaffolding
type:added
Do not merge it before filling and releasing template repositories
Constatation : When developers start a new project, common behavior is to clone an existing contract then update it up to the wished contract. Goal :
- Add a new command to Ligo CLI which will pull the template from github and edit project descriptor files to initialize an unique project.
- Add a new command to Ligo CLI which will list available template Other benefits :
- For beginners the learning curve can be flattened
- Technically, we have to run every contracts templates with each new ligo version, a kind of end2end testing which will ensure our reliability by limiting regression.
Changelog details:
Initialize a new Ligo project from chosen template
This feature allow user to easily setup a new ligo project (Library or Contract) from template by adding new command-set into CLI.
Requirements
Feature use git
so git cli have to be available.
Commands
ligo init -help
ligo init contract --template-list
= print available template list to generate contract
ligo init contract <PROJECT> --template XXX
= initialize folder with contract template XXX
ligo init library --template-list
= print available template list to generate library
ligo init library <PROJECT> --template XXX
= initialize folder with library template XXX
Additional details
- Every template are cloned from github ligolang org.