Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hyperupcall/config
A deno module that helps you load configuration
https://github.com/hyperupcall/config
Last synced: 28 days ago
JSON representation
A deno module that helps you load configuration
- Host: GitHub
- URL: https://github.com/hyperupcall/config
- Owner: hyperupcall
- License: mit
- Created: 2020-05-15T13:03:18.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-12-01T09:38:14.000Z (11 months ago)
- Last Synced: 2023-12-01T10:29:34.047Z (11 months ago)
- Language: TypeScript
- Homepage:
- Size: 76.2 KB
- Stars: 4
- Watchers: 2
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# config
![github ci](https://github.com/hyperupcall/config/workflows/Test%20CI/badge.svg?branch=master)
![github badge](https://img.shields.io/github/license/hyperupcall/config)
![gitHub issues](https://img.shields.io/github/issues/hyperupcall/config)A deno module that helps you load configuration.
> ⚠️ _Warning_ The examples in this README pull from `main`. you may want to "pin"
> to a particular version by using git tags in the URL to direct you at a particular
> version. For example, to use v1.3.2 of `hyperupcall/config`, you would want
> to import `https://deno.land/x/[email protected]/mod.ts`.## Usage
```ts
import { Config } from "https://deno.land/x/config/mod.ts"// Example
const config = await Config.load({
file: 'fileName'
})
if (!config) {
console.log("config is 'undefined' when no config files were found")
}// Example including defaults
await Config.load({
file: 'fileName',
searchDir: Deno.cwd()
})
```### Options
- `file` the name of your file
- `searchDir` the directory to start searching. this is the directory that might include a `.config` file### Priority
The ordering is as follows. Modules are loaded from `.config` folder first, then the parent to that folder. Rc files in `.config` never start with a dot.
- `.config/file.config.ts`
- `.config/file.config.js`
- `.config/file.toml`
- `.config/file.json`
- `.config/file.yaml`
- `.config/file.yml`
- `file.config.ts`
- `file.config.js`
- `.file.toml`
- `.file.json`
- `.file.yaml`
- `.file.yml`