lucky_env

forked from luckyframework/lucky_env
An environment variable manager

LuckyEnv

Yet another environment variable manager. Read from a file like a .env

Installation

  1. Add the dependency to your shard.yml:
dependencies:
  lucky_env:
    github: luckyframework/lucky_env
  1. Run shards install

Usage

Environment variable file

Create your "env" file. Name it whatever you want. Most common is .env.

The file is created with key/value pairs separated by =.

APP_NAME=my_app
LUCKY_ENV=development
DEV_PORT=3002
DB_NAME=${APP_NAME}_${LUCKY_ENV}

Crystal code

# This would normally go in your `src/shards.cr` file
require "lucky_env"

# Loads the ".env" file. Raises if it is missing
LuckyEnv.load(".env")

# Use `load?` if the file is optional. 
# This will not raise if the file is missing
LuckyEnv.load?(".env")

ENV["LUCKY_ENV"] == "development" # => true

# Returns whatever `ENV["LUCKY_ENV"]` is set to, or `"development"` if not set.
LuckyEnv.environment # => "development"

# Environment predicates
LuckyEnv.development? # => true
LuckyEnv.production? # => false
LuckyEnv.test? # => false

Development

Install shards shards install, and start making changes. Be sure to run ./bin/ameba, and the crystal formatter crystal tool format spec src.

Read through the issues for things you can work on. If you have an idea, feel free to open a new issue!

Contributing

  1. Fork it (https://github.com/luckyframework/lucky_env/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

Repository

lucky_env

Owner
Statistic
  • 0
  • 0
  • 0
  • 1
  • 1
  • over 1 year ago
  • March 20, 2023
License

MIT License

Links
Synced at

Fri, 22 Nov 2024 02:09:19 GMT

Languages