A wrapper around modern JavaScript tools.
npm i -D doogu
This package comes with a set of essential development dependencies:
- Typescript – A language for application-scale JavaScript
- Vite – Next generation frontend tooling
- Vitest – A Vite-native unit test framework. It's fast!
- ESLint – Pluggable JavaScript linter
- Prettier – An opinionated code formatter
Doogu provides shareable configs for ESLint, Prettier, and Semantic Release that can be reused across projects.
Create your eslint.config.js
file, add the following:
export { default } from 'doogu/eslint.config.js'
To extend the shareable Prettier configuration in your package.json
file, add the following:
{
"prettier": "doogu/prettier.config.js"
}
To extend the shareable Semantic Release config in your package.json
file, add the following:
{
"release": "doogu/release.config.js"
}
You can utilize the following commands in your package.json
file:
{
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"test": "vitest",
"coverage": "vitest run --coverage",
"lint": "eslint .",
"format": "prettier --write ."
}
}
Or do anything you want:
{
"scripts": {
"start": "npm run dev",
"dev": "npm run types && vite build --ssr src/index.ts --emptyOutDir=false --watch",
"build": "vite build --ssr src/index.ts && npm run types",
"test": "vitest --ui",
"coverage": "vitest run --coverage",
"types": "tsc -d --emitDeclarationOnly --outDir ./dist",
"lint": "tsc --noEmit && eslint .",
"format": "prettier --write ."
}
}
- module-starter – A bare-bones template designed for modern web projects
- monorepo-starter – A monorepo starter template using native NPM workspace
We 💛 issues.
When committing, please conform to the semantic-release commit standards. Please install commitizen
and the adapter globally, if you have not already.
npm i -g commitizen cz-conventional-changelog
Now you can use git cz
or just cz
instead of git commit
when committing. You can also use git-cz
, which is an alias for cz
.
git add . && git cz
A project by Stilearning © 2022-2024.