@randajan/simple-lib
v2.3.2
Published
Supersimple start for developing custom js library
Downloads
14
Maintainers
Readme
Simple node.js lib
Goal is to provide supersimple start for developing custom js library.
Instalation
npm install -D @randajan/simple-lib;
or
yarn add -D @randajan/simple-lib;
Usage
import slib from "@randajan/simple-lib";
import fs from "fs-extra"; // optional
//those values are default values
slib(
isBuild=true, //true = generate build; false = start dev server;
{
port:3000, //port of dev server
mode:"web", //"web"=frontend lib, "node"=backend lib
rebuildBuffer:100, //delay between src changed and rebuild happens
minify:false, //global minify - true = generate minify build
external:[], //global esbuild external libraries
plugins:[], //global esbuild plugins
loader:{}, //global esbuild loader
info:{}, //global package info
jsx:{ //global jsx config
transform:undefined, //global es-build jsx
dev:undefined, //global es-build jsxDev
factory:undefined, //global es-build jsxFactory
fragment:jsx.factory, //global es-build jsxFragment; if null then jsx.factory will be set
importSource:undefined //global es-build jsxImportSource
},
lib:{
dir:"", //lib root directory
srcdir:"src", //lib source code directory
distdir:"dist", //lib build directory
minify:false, //lib minify - true = generate minify build
entries:["index.js"], //lib entries files
external:[], //lib esbuild external libraries
plugins:[], //lib esbuild plugins
loader:{}, //lib exbuild loader
info:{}, //lib package info
jsx:{ //lib jsx config
transform:undefined, //lib es-build jsx
dev:undefined, //lib es-build jsxDev
factory:undefined, //lib es-build jsxFactory
fragment:jsx.factory, //lib es-build jsxFragment; if null then jsx.factory will be set
importSource:undefined //lib es-build jsxImportSource
},
},
demo:{
dir:"demo", //demo root directory
srcdir:"src", //demo source code directory
distdir:"dist", //demo build directory
minify:false, //demo minify - true = generate minify build
entries:["index.js"], //demo entries files
external:[], //demo esbuild external libraries
plugins:[], //demo esbuild plugins
loader:{}, //demo esbuild loader
info:{}, //demo package info
jsx:{ //demo jsx config
transform:undefined, //demo es-build jsx
dev:undefined, //demo es-build jsxDev
factory:undefined, //demo es-build jsxFactory
fragment:jsx.factory, //demo es-build jsxFragment; if null then jsx.factory will be set
importSource:undefined //demo es-build jsxImportSource
},
}
}
)
Requirements
...
"app-root-path": "^3.1.0",
"chalk": "^5.2.0",
"chokidar": "^3.6.0",
"esbuild": "0.16.17",
"esbuild-node-externals": "^1.13.0",
"fs-extra": "^11.2.0",
"live-server": "^1.2.2"
...
Happy hacking
License
MIT © randajan