Skip to content

ahmetcanozcan/glevn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GLEVN

Glevn is a tool that helps manage node based application's environment variables.

Glevn does not require any changes in your code.

npm version

INSTALLATION

Glevn can be installed either globally or locally. Example for installing globally: npm install -g glevn and glevn will be installed globally to your system path.

Also Glevn can be installed locally: npm install --save-dev glevn

If glevn is intalled locally, it is only available on npm scripts(npm run start).

USAGE


Glevn require a environment file named .env in root directory of your project. That file path and name can be changed(Also using json files supported).

Example .env file

  HELLO=WORLD #that's a comment
  SECRET=SECRET
  PASSWORD=123456
  #That's a comment too

also json file can be used instead of .env file

//env.json
{
  "HELLO": "WORLD",
  "SECRET": "SECRET",
  "PASSWORD": 123456
}

and run your app.js file using glevn app.js. in your app.js file you can reach all envoirment variables using process.env.<variable name(key)>.

GLEVMON

Glevmon is a feature that restarts the app when a file changed in watched directory. Activating glevmon require some additional arguments (--glevmon). For example:

glevmon app.js --glevmon

.glevnfile

.glevnfile includes global modules, configurations, unwatched files. Example .glevnfile:

  DEFINE MODULES
  import lodash as  _
  import module
  #That's a comment

  DEFINE CONFIG

  assign project_name = glevn
  assign-num year = 1881
  assign-bool isProduction = true

  DEFINE UNWATCHED
  # That's a comment too
  src/node_modules/
  *.md

Also json file is allowed:

{
  "MODULES": [
    {
      "name": "_",
      "ref": "lodash"
    }
  ],
  "CONFIG": {
    "year": 1881,
    "isProduction": true
  },
  "UNWATCHED": ["src/node_modules/", "*.md"]
}

Example Project

Let's try that stuff on the glevn example project

Releases

No releases published

Packages

No packages published