<commit_before>BallerCFG - a pretty cool configuration loader
==============================================

![Build Status][1]]

##About

BallerCFG is a pretty cool configuration file loader which can deal with
multiple formats/directories at the same time.

Currently supported formats include:

* YAML
* JSON
* INI/CFG

Please note that only Python3 is supported.

## Installation

```
pip3 install -U https://github.com/kalmanolah/ballercfg.git
```

## Usage

```
from ballercfg import ConfigurationManager


# Load a single configuration file
cfg = ConfigurationManager.load('path/to/cfg/file.yaml')

# Load multiple configuration files by masking
cfg = ConfigurationManager.load('path/to/cfg/*')

# Load multiple directories, combined with masks
cfg = ConfigurationManager.load(['path/to/cfg/*', '/etc/app/cfg/*'])


# Grabbing data from your configuration files
# Example YAML structure:
#
#     config:
#         db:
#             username:  'db-user'
#
value = cfg.get('config.db.user')

# Grabbing data from your configuration files, with defaults
value = cfg.get('config.db.user', 'default-user')
```

##License

MIT license.

```
The MIT License (MIT)

Copyright (c) 2014 <NAME>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell<commit_msg>Fix README<commit_after>BallerCFG - a pretty cool configuration loader
==============================================

![Build Status][1]

BallerCFG is a pretty cool configuration file loader which can deal with
multiple formats/directories at the same time.

Currently supported formats include:

* YAML
* JSON
* INI/CFG

Please note that only Python3 is supported.

## Installation

```
pip3 install -U git+https://github.com/kalmanolah/ballercfg.git
```

## Usage

```python
from ballercfg import ConfigurationManager


# Load a single configuration file
cfg = ConfigurationManager.load('path/to/cfg/file.yaml')

# Load multiple configuration files by masking
cfg = ConfigurationManager.load('path/to/cfg/*')

# Load multiple directories, combined with masks
cfg = ConfigurationManager.load(['path/to/cfg/*', '/etc/app/cfg/*'])


# Grabbing data from your configuration files
# Example YAML structure:
#
#     config:
#         db:
#             user:  'db-user'
#
value = cfg.get('config.db.user')

# Grabbing data from your configuration files, with defaults
value = cfg.get('config.db.user', 'default-user')
```

##License

MIT license.

```
The MIT License (MIT)

Copyright (c) 2014 <NAME>

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
{'fraction_non_alphanumeric': 0.13076667772983738, 'fraction_numerical': 0.004646531695984069, 'mean_word_length': 4.602230483271375, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5636659', 'n_tokens_mistral': 854, 'n_tokens_neox': 807, 'n_words': 312}