0.0.13 • Published 2 years ago

create-dapp-example v0.0.13

Weekly downloads
-
License
MIT
Repository
-
Last release
2 years ago

🏗️ create-dapp-example

Testing the best way to have a create-app cli tool.

yarn create dapp-example
# or
npx create-dapp-example

You can also pass flags to skip prompts.

yarn create dapp-example my-example-dapp --template se-2-hardhat

# or

yarn create dapp-example my-example-dapp --yes

Understanding the structure :

src/cli.ts is the entry point for the cli.

src/main.ts defines the task using listr and executes them.

src/tasks holds each task logic for example one of the task in src/main.ts is "Initialize git repo" and the logic for it is present at src/tasks/init-git-repo

src/utils holds utility / helpers function like parsing cli args, checking for correct template name, showing welcome and outro messages etc.

src/types.ts holds all the type

Trying out locally :

Clone and get into working directory :

git clone https://github.com/carletex/create-dapp-example
cd create-dapp-example

Option 1. Dev & cli

Get Rollup watching for changes:

yarn dev

Edit files as you want. When you want to run the cli tool, just do:

yarn cli

This script automatically deletes the test/ folder. Therefore, a convenient command to run for iterating without having to manually delete folders would be:

yarn cli test -s

Which generates the output in the test/ folder and skips installing dependencies. That test/ folder would then be deleted in the following yarn cli run.

Option 2. Build & npx

yarn build && npx .

Option 3. Linking package locally and running watch mode:

# Make sure you are in create-dapp-se2 directory
yarn link

# This will watch and compile as you edit files
yarn dev

Testing :

# In new terminal
cd ..
mkdir test-dapp-se2

# Running this will execute the local bin file
create-dapp-se2

Stack used :

  • Rollup for bundling
  • arg for parsing command line arguments
  • chalk for terminal string styling
  • inquirer for interactive command line user interface
  • listr for showing terminal task list
  • execa for executing terminal commands
  • pkg-install for installing packages
0.0.13

2 years ago

0.0.12

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago