6.2.7 • Published 8 months ago

@randajan/simple-app v6.2.7

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

Simple node.js app

NPM JavaScript Style Guide

Goal is to provide supersimple start for developing and deploying full stack app in one package

Instalation

npm install -D @randajan/simple-app;

or

yarn add -D @randajan/simple-app;

Usage

import sapp from "@randajan/simple-app";

//those values are default values

sapp({
  isBuild:false,            //false = start dev server; true = generate minify build
  distdir:"dist",           //directory of build
  srcdir:"src",             //directory of source code
  arcdir:"arc",             //directory for shared code by frontend and backend
  staticdir:"static",       //static src folder name for files/folders structure that will be copied as distdir 
  rebuildBuffer:100,        //delay between src changed and rebuild happend
  plugins:[],               //global esbuild plugins
  loader:{},                //global esbuild loader
  info:{},                  //variables accessible via import info from "@randajan/simple-app/info"           
  env:{                     //optional config for maitained env file
    name:undefined,         //env file that will be used (when isBuild=true this is ignored)
    dir:"env",              //directory for all used env files
  },
  static:{
    dir:"static",
    injects:[],             //backend files where info variables will be injected between brackets {{name}}
  },
  be:{                      //backend options
    dir:"backend",          //backend subdirectory
    format:"esm",           //backend format
    minify:isBuild,         //backend minify - true = generate minify build; if null then isProd 
    entries:["index.js"],   //backend entry files
    external:undefined,     //backend if not provided esbuild will keep all node_modules external
    plugins:[],             //backend esbuild plugins
    loader:{},              //backend esbuild loader
    io:{},                  //backend default io config
    info:{},                //variables accessible only at backend via import info from "@randajan/simple-app/info"
  },
  fe:{                      //frontend options
    dir:"frontend",         //frontend subdirectory
    minify:isProd,          //frontend minify - true = generate minify build; if null then isProd 
    entries:["index.js"],   //frontend entry files
    plugins:[],             //frontend esbuild plugins
    loader:{},              //frontend esbuild loader
    io:{},                  //frontend default io config
    injects:["index.html"], //frontend files where info variables will be injected between brackets {{name}}
    info:{},                //variables accessible only at frontend via import info from "@randajan/simple-app/info"
  }
})

After run will be generated necessary file structure.

Requirements

...
    "@randajan/std-io": "^1.0.2",
    "chalk": "^5.3.0",
    "chokidar": "^3.6.0",
    "detect-port": "^2.1.0",
    "esbuild": "^0.25.1",
    "esbuild-node-externals": "^1.18.0",
    "fs-extra": "^11.2.0",
    "open": "^10.1.0",
    "socket.io": "^4.7.5",
    "socket.io-client": "^4.7.5"
...

Backend

Prepared servers:

  • @randajan/simple-app/be/express
  • @randajan/simple-app/be/koa

Or you can implement your own

  • @randajan/simple-app/be/server

Or you can use it even without http server at all

  • @randajan/simple-app/be

Env

Happy hacking

License

MIT © randajan

5.3.0

10 months ago

5.1.2

10 months ago

5.1.1

10 months ago

5.1.0

10 months ago

6.1.0

10 months ago

6.1.2

10 months ago

6.1.1

10 months ago

6.2.5

9 months ago

6.2.4

9 months ago

6.0.6

10 months ago

6.2.7

8 months ago

6.2.6

9 months ago

4.0.1

10 months ago

4.0.0

10 months ago

4.0.2

10 months ago

5.2.1

10 months ago

5.2.0

10 months ago

5.0.0

10 months ago

6.0.1

10 months ago

6.0.0

10 months ago

6.2.1

10 months ago

6.0.3

10 months ago

6.2.0

10 months ago

6.0.2

10 months ago

6.2.3

9 months ago

6.0.5

10 months ago

6.2.2

10 months ago

6.0.4

10 months ago

3.1.7

10 months ago

3.1.6

10 months ago

3.1.5

1 year ago

3.1.3

1 year ago

3.1.4

1 year ago

3.1.2

1 year ago

3.1.1

1 year ago

3.1.0

1 year ago

3.0.1

2 years ago

3.0.0

2 years ago

2.1.6

2 years ago

2.1.7

2 years ago

2.1.5

2 years ago

2.1.4

2 years ago

2.1.3

2 years ago

2.1.1-0

2 years ago

2.1.0-0

2 years ago

2.1.3-0

2 years ago

2.1.2-0

2 years ago

2.0.7

2 years ago

2.0.6

2 years ago

2.0.9

2 years ago

2.0.8

2 years ago

2.0.3

3 years ago

2.0.2

3 years ago

2.0.5

3 years ago

2.0.4

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.7.2

3 years ago

1.6.4

3 years ago

1.7.1

3 years ago

1.6.2

3 years ago

1.7.0

3 years ago

1.5.3

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.5.2

4 years ago

1.5.1

4 years ago

1.5.0

4 years ago

1.4.2

4 years ago

1.4.1

4 years ago

1.4.0

4 years ago

1.4.0-0

4 years ago

1.3.0

4 years ago

1.2.1-0

4 years ago

1.2.0-0

4 years ago

1.1.7-0

4 years ago

1.1.6-0

4 years ago

1.1.5-0

4 years ago

1.1.4-0

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago