starts
v0.8.0
Published
Simplify your live development workflow
Downloads
49
Readme
Deprecated
I don't use it, or maintain it anymore 🌹
starts
Simplify your live development workflow ❤️
I consult as a pure frontend developer and normally have all JS / HTML generated into a public
folder that we then upload to our CDN (normally S3). We have a few projects with "start": "npm run emails:live & npm run pdfs:live & npm run app:live"
. It was time for something simpler. Perhaps you are are same 🌹
Think of it as
concurrently
,nodemon
andlight-server
merged to play well with each other 🌹
Quick starts
Install
npm install starts --save-dev --save-exact
Create a starts.ts
file
import {starts} from "starts";
starts({
serve: {
dir "./public"
},
/**
* If you edit any of the files on the right, the command on the left executes.
* and if we were serving something, the connected web pages reload as well.
*/
run: [
{ cmd: "npm run emails", watch: ["src/emails"] },
{ cmd: "npm run pdfs", watch: ["src/pdfs"] },
{ cmd: "npm run app", watch: ["src/app"] },
]
});
Run it npm install ts-node --save --save-exact
with package.json
:
{
"scripts": {
"start": "ts-node ./src/starts.ts"
}
}
Ofcourse you can use js / raw node if you want to. But why would you.
More
All the config options:
export type ServeConfig = {
dir?: string
port?: number
host?: string
}
export type RunConfig = {
cmd: string
watch?: string[]
reload?: /** Default */ 'all' | 'css' | 'none'
keepAlive?: boolean
}
/**
* The complete config
*/
export type StartsConfig = {
verbose?: boolean
serve?: ServeConfig
run?: RunConfig[]
/** autorun initially */
initialRun?: boolean
}