doogu

3.2.13 • Public • Published

doogu

A wrapper around modern JavaScript tools.

Install

npm i -D doogu

What includes?

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

Shareable configs

Doogu provides shareable configs for ESLint, Prettier, and Semantic Release that can be reused across projects.

ESLint Configuration

To extend the shareable ESLint configuration in your package.json file, add the following:

{
  "eslintConfig": {
    "extends": "./node_modules/doogu/eslint"
  }
}

Prettier Configuration

To extend the shareable Prettier configuration in your package.json file, add the following:

{
  "prettier": "doogu/prettier.json"
}

Semantic Release Configuration

To extend the shareable Semantic Release config in your package.json file, add the following:

{
  "release": "doogu/release.config.js"
}

NPM Scripts

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 && resolve-tspaths -o ./dist",
    "lint": "tsc --noEmit && eslint .",
    "format": "prettier --write ."
  }
}

Related

  • module-starter – A bare-bones template designed for modern web projects
  • monorepo-starter – A monorepo starter template using native NPM workspace

Contributing

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

Thank you

A project by Stilearning © 2022-2023.

Package Sidebar

Install

npm i doogu

Weekly Downloads

1,026

Version

3.2.13

License

MIT

Unpacked Size

69.6 kB

Total Files

7

Last publish

Collaborators

  • bent10