Skip to content

danilovilhena/kickstart-it

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Kickstart

The fastest way to setup your Javascript projects!

npm npm node-current

Kickstart demonstration

In less than a minute and just answering questions, you're able to setup:

βœ… README, Changelog, Commitizen and .gitignore
βœ… Husky and lint-staged
βœ… Linter (ESLint or StandardJS) and formatter (Prettier)
βœ… CSS frameworks (Tailwind, Sass or Material UI)
βœ… Unit testing frameworks (Jest or Jasmine)
βœ… End-To-End testing frameworks (Cypress or Playwright)

It's all 100% customizable! πŸŽ‰

πŸ”§ Installation

Simply run the command below:

npm install -g kickstart-it

πŸ’‘ Usage

In a new project folder (it can have git initialized or package.json already, but if it doesn't kickstart will create it), run the command:

kickstart-it [--config=<path-to-file>] [--outputDir=<path-to-directory>]

Flags

  • --config: use a config file (check the next section)
  • --outputDir: define the directory to init your project
    • Should be a path string, i.e. project, ./project, ./dir/project
    • If it's not created, kickstart will create it
    • If it's not specified here or in the config, the default is current directory

Configuration

The config file must be in JSON. It can have the following properties:

P.S.: You don't have to add all of them, just include the ones you need! All false or missing properties, won't be initialized.

Property Accepted values Note
changelog "keepAChangelog", "conventionalChangelog", false
commitizen true, false Only used if changelog is "conventionalChangelog"
readme true, false
gitignore true, false
husky true, false
language "js", "ts"
type "cjs", "esm"
env "node", "browser"
css "sass", "tailwind", "mui", false
lint "eslint", "standardjs", false
eslint.integratePrettier true, false Only used if lint is set to "eslint"
eslint.configuration true, false Only used if lint is set to "eslint"
format "prettier", false If eslint.integratePrettier is set, this is unnecessary
lintStaged true, false Only available if lint or prettier is set
unitTest "jest", "jasmine", false
e2eTest "cypress", "playwright", false
packageManager "npm", "yarn", "pnpm"
outputDir String Path strings, i.e. project, ./project, ./dir/project

πŸ’¬ Support

Having trouble? Please email me at [email protected]

πŸ‘₯ Contributing

Please do! This project is open source, and I greatly appreciate contributions from anyone! So report bugs, suggest new features and open pull requests to improve the current code!

Here's the link for the repo πŸ‘‡ https://github.com/danilovilhena/kickstart-it

πŸ“ Changelog

Please check the CHANGELOG file.

Did this package help you?

Star this repo and share it with your friends.

About

πŸš€ The fastest way to setup your projects!

Resources

License

Stars

Watchers

Forks

Releases

No releases published