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
deno
Last synced: 5 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 (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-12-01T09:38:14.000Z (about 1 year ago)
- Last Synced: 2025-02-02T04:24:06.619Z (18 days ago)
- Topics: deno
- Language: TypeScript
- Homepage:
- Size: 76.2 KB
- Stars: 5
- Watchers: 2
- Forks: 4
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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`