@juniorcitizen/environment-variables v0.0.1-alpha.10
@juniorcitizen/environment-variables
provides modularized and type-safe access to environment variables with sensible defaults for node.js projects
Outline
Installation
npm install @juniorcitizen/environment-variables
Usage
import {ServerEnvVars} from '@juniorcitizen/environment-variables'
const serverEnvVars = new ServerEnvVars()
// to access the 'PORT' variable
console.log(serverEnvVars.PORT) // => 3001
// destructure to access individual values
const {PORT} = serverEnvVars
console.log(PORT) // => 3001
API
AdminEnvVars
AdminEnvVars.ADMIN_EMAIL: string | undefined
- default: undefined
- key: process.env.ADMIN_EMAIL
AdminEnvVars.ADMIN_USER_NAME: string | undefined
- default: undefined
- key: process.env.ADMIN_USER_NAME
JwtEnvVars
JwtEnvVars.ACCESS_DURATION: number
- default: 60000 (one minute in milliseconds)
- key: process.env.ACCESS_DURATION
JwtEnvVars.ACCESS_SECRET: string
- default: (random string of 24 characters)
- key: process.env.ACCESS_SECRET
JwtEnvVars.REFRESH_DURATION: number
- default: 604800000 (one week in milliseconds)
- key: process.env.REFRESH_DURATION
JwtEnvVars.REFRESH_SECRET: string
- default: (random string of 24 characters)
- key: process.env.REFRESH_SECRET
JwtEnvVars.RESET_DURATION: number
- default: 3600000 (one hour in milliseconds)
- key: process.env.RESET_DURATION
JwtEnvVars.RESET_SECRET: string
- default: (random string of 24 characters)
- key: process.env.RESET_SECRET
JwtEnvVars.VERIFY_DURATION: number
- default: 259200000 (three days in milliseconds)
- key: process.env.VERIFY_DURATION
JwtEnvVars.VERIFY_SECRET: string
- default: (random string of 24 characters)
- key: process.env.VERIFY_SECRET
MongoEnvVars
MongoEnvVars.MONGO_DATABASE: string
- default: 'default_database'
- key: process.env.MONGO_DATABASE
MongoEnvVars.MONGO_HOST: string
- default: '0.0.0.0'
- key: process.env.MONGO_HOST
MongoEnvVars.MONGO_PASSWORD: string
- default: undefined
- key: process.env.MONGO_PASSWORD
MongoEnvVars.MONGO_PORT: number
- default: 6379
- key: process.env.MONGO_PORT
MongoEnvVars.MONGO_USER_NAME: string
- default: undefined
- key: process.env.MONGO_USER_NAME
RedisEnvVars
RedisEnvVars.REDIS_HOST: string
- default: '0.0.0.0'
- key: process.env.REDIS_HOST
RedisEnvVars.REDIS_PASSWORD: string
- default: undefined
- key: process.env.REDIS_PASSWORD
RedisEnvVars.REDIS_PORT: number
- default: 6379
- key: process.env.REDIS_PORT
RedisEnvVars.REDIS_TTL: number
- default: 60000 (one minute in milliseconds)
- key: process.env.REDIS_TTL
ServerEnvVars
ServerEnvVars.FAVICON_FILE_NAME: string
- default: 'favicon.ico'
- key: process.env.FAVICON_FILE_NAME
ServerEnvVars.PORT: number
- default: 3001
- key: process.env.PORT
ServerEnvVars.PROD_MODE: boolean
- default: false
- key: process.env.NODE_ENV
ServerEnvVars.PUBLIC_PATH: string
- default: './public'
- key: process.env.PUBLIC_PATH
ServerEnvVars.VIEWS_PATH: string
- default: './views'
- key: process.env.VIEWS_PATH
SessionEnvVars
SessionEnvVars.SESSION_ABSOLUTE_TIMEOUT: number
- default: 604800000 (one week in milliseconds)
- key: process.env.SESSION_ABSOLUTE_TIMEOUT
SessionEnvVars.SESSION_IDLE_TIMEOUT: number
- default: 600000 (ten minutes in milliseconds)
- key: process.env.SESSION_IDLE_TIMEOUT
SessionEnvVars.SESSION_NAME: string
- default: 'default_session'
- key: process.env.SESSION_NAME
ValidationEnvVars
ValidationEnvVars.EMAIL_MAX_LENGTH: number
- default: 128
- key: process.env.EMAIL_MAX_LENGTH
ValidationEnvVars.EMAIL_MIN_LENGTH: number
- default: 8
- key: process.env.EMAIL_MIN_LENGTH
ValidationEnvVars.PASSWORD_MAX_LENGTH: number
- default: 64
- key: process.env.PASSWORD_MAX_LENGTH
ValidationEnvVars.PASSWORD_MIN_LENGTH: number
- default: 12
- key: process.env.PASSWORD_MIN_LENGTH
ValidationEnvVars.USER_NAME_MAX_LENGTH: number
- default: 64
- key: process.env.USER_NAME_MAX_LENGTH
ValidationEnvVars.USER_NAME_MIN_LENGTH: number
- default: 8
- key: process.env.USER_NAME_MIN_LENGTH
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago