haetae
Grouping of frequently used packages(@haetae/*
) for Haetae.
Haetae
Haetae enables incremental test, lint, build, and more, for any languages, platforms, and frameworks.
Haetae's main functionalities are implemented by @haetae/cli
and @haetae/core
.
This pacakge(haetae
) is a convenient grouping of frequently used packages, including @haetae/cli
and @haetae/core
.
For understanding Haetae itself first, please read the repository(monorepo)'s readme, not this packages' readme.
Why?
Haetae is very loosely coupled. Heatae enables flexible configuration for any kind of incremental tasks. So, you can freely set how it works.
But there're still some patterns and toolsets frequently used in general scenario. That's why the Haetae organization implements several offical packages.
Though you can of course selectively depend on only what you really need, sometimes you just want them all as a single package for convenience.
This package(haetae
) is for that purpose. This package depends on all of them(@haetae/*
) and exports every features of them.
Full List:
CLI Usage
This is identical from @haetae/cli
. You can use CLI haetae
as if you installed @haetae/cli
directly. Refer to @haetae/cli
's docs for description.
Programmatic Usage (in config file)
This package(haetae
) has a very simple source code.
export * as cli from '@haetae/cli'
export * as core from '@haetae/core'
export * as git from '@haetae/git'
export * as javascript from '@haetae/javascript'
export * as jest from '@haetae/jest'
export * as utils from '@haetae/utils'
So, you can use haetae
like the example below.
haetae.config.js (example):
const { core, git, javascript: js, jest, utils } = require('haetae')
// `core.configure` helps you by type checking (on IDE level), as it has .d.ts files
module.exports = core.configure({
commands: {
test: {
run: async () => {},
env: () => ({
nodeVersion: process.version,
os: process.platform,
coreVersion: core.version,
}),
},
lint: {
run: async () => {},
},
},
})