Skip to content

⚡️Lightning-fast linter for .env files. Written in Rust 🦀

License

Notifications You must be signed in to change notification settings

ametalon/dotenv-linter

 
 

Repository files navigation

dotenv-linter

⚡️Lightning-fast linter for .env files. Written in Rust 🦀

GitHub Actions Coverage Status License Releases

It checks .env files for problems that may cause the application to malfunction:

    ✅ Duplicated Key
    ✅ Ending Blank Line
    ✅ Extra Blank Line
    ✅ Incorrect delimiter
    ✅ Key without value
    ✅ Leading character
    ✅ Lowercase key
    ✅ Quote character
    ✅ Space character
    ✅ Trailing whitespace
    ✅ Unordered Key

And automatically fixes them all 😱

The key features:

    ⚡️ Lightning-fast because it is written in Rust 🦀
    💣 Can be used on any project regardless of the programming language 💥
    🚀 Can be integrated with reviewdog and other CI services (including GitHub Actions) 🔥

Articles about dotenv-linter:

Dotenv-linter is created & supported by Evrone. What else we develop with Rust.

👨‍💻 Installation

Pre-compiled binary

# Linux / macOS / Windows (MINGW and etc). Installs it into ./bin/ by default
$ curl -sSfL https://raw.githubusercontent.com/dotenv-linter/dotenv-linter/master/install.sh | sh -s

# Specify installation directory and version
$ curl -sSfL https://raw.githubusercontent.com/dotenv-linter/dotenv-linter/master/install.sh | sh -s -- -b usr/local/bin v2.0.0

# Alpine Linux (wget)
$ wget -q -O - https://raw.githubusercontent.com/dotenv-linter/dotenv-linter/master/install.sh | sh -s

You can find other installation methods here: https://dotenv-linter.github.io/#/installation

🚀 Usage

By default, dotenv-linter checks all .env files in the current directory:

$ dotenv-linter
.env:2 DuplicatedKey: The FOO key is duplicated
.env:3 UnorderedKey: The BAR key should go before the FOO key
.env.test:1 LeadingCharacter: Invalid leading character detected

Found 3 problems

It can also fix found warnings. You should use the argument --fix (or its short version -f) for this:

$ dotenv-linter -f
Original file was backed up to: ".env_1601378896"

.env:2 DuplicatedKey: The BAR key is duplicated
.env:3 LowercaseKey: The foo key should be in uppercase

All warnings are fixed. Total: 2

Other use cases you can find here: https://dotenv-linter.github.io/#/usage

🚦 Continuous Integration

dotenv-linter can also be used with CI services such as: GitHub Actions and Circle CI.

🤝 Contributing

If you've ever wanted to contribute to open source, now you have a great opportunity:

👍 Similar projects

✨ Contributors

This project exists thanks to all the people who contribute. [Contribute].

♥️ Sponsors

Sponsored by Evrone

Become a financial contributor and help us sustain our community.

📃 License

MIT

About

⚡️Lightning-fast linter for .env files. Written in Rust 🦀

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 96.6%
  • Shell 3.2%
  • Dockerfile 0.2%