0.1.0 • Published 1 year ago

@dongine/app-config v0.1.0

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

@dongine/app-config

Pre-requisite

  • fibjs >= 0.26.0

Usage

npm install @dongine/app-config

Sample

const AppConfig = require('@dongine/app-config')

const appName = 'jmetro'

AppConfig.homedir.getAppDataDirname(appName) // equals to ~/.jmetro/
AppConfig.homedir.getAppConfigFilename(appName) // equals to ~/.jmetro/app-config.json

APIs

require('@dongine/app-config').homedir

homedir.getAppDataDirname(appName: string): string

compute one home data directory name for appName

homedir.getAppConfigFilename(appName: string, env: string): string

compute one home config file name for appName, env would be autoprefixed with . if it has no.

it equals to path.join(homedir.getAppDataDirname(appName: string), 'app-config' + env + '.json')

homedir.getAppDataDirname('jmetro') // ~/.jmetro/app-config.json
homedir.getAppDataDirname('jmetro', 'dev') // ~/.jmetro/app-config.dev.json

homedir.createAppDataDirectory(appName: string)


try to create app's home data directory, if success or it existed, return the app's home data directory

homedir.writeAppEnvConfig(appName: string, env: string)

try to write app's env-config to its home data directory.

// would write empty config to ~/.jmetro/app-config.production.json
homedir.writeAppEnvConfig('jmetro', 'production')

// would write empty config to ~/.jmetro/app-config.json
homedir.writeAppEnvConfig('jmetro', {})

// would write config to ~/.jmetro/app-config.production.json
homedir.writeAppEnvConfig('jmetro', {env: 'production'})

homedir.readAppEnvConfig(appName: string, env: string)

try to read app's env-config to its home data directory.

License

GPL-3.0

Copyright (c) 2018-present, Richard