It checks .env files for problems that may cause the application to malfunction:
✅Duplicated Key ✅Incorrect delimiter ✅Key without value ✅Leading character ✅Lowercase key ✅Quote character (Will be available in v2.0.0) ✅Space character ✅Unordered Key
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 alternatives and similar libraries
Based on the "Code Analysis" category.
Alternatively, view dotenv-linter alternatives based on common mentions on social networks and blogs.
9.6 9.8 L3 dotenv-linter VS CheckstyleCheckstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Google Java Style Guide and Sun Code Conventions, but is highly configurable. It can be invoked with an ANT task and a command line program.
9.2 7.0 dotenv-linter VS SourcetrailSourcetrail - free and open-source interactive source explorer
8.5 9.7 L3 dotenv-linter VS Error ProneCatch common Java mistakes as compile-time errors
7.6 8.7 dotenv-linter VS NullAwayA tool to help eliminate NullPointerExceptions (NPEs) in your Java code with low build-time overhead
7.6 9.3 dotenv-linter VS SpotbugsSpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code.
6.5 9.7 dotenv-linter VS SonarJava:coffee: SonarSource Static Analyzer for Java Code Quality and Security
6.4 9.7 L2 dotenv-linter VS SpoonSpoon is a metaprogramming library to analyze and transform Java source code. :spoon: is made with :heart:, :beers: and :sparkles:. It parses source files to build a well-designed AST with powerful analysis and transformation API.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of dotenv-linter or a related project?
⚡️Lightning-fast linter for .env files. Written in Rust 🦀
Dotenv-linter can [check](#-check) / [fix](#-fix) / [compare](#-compare)
.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 ✅ Substitution Key ✅ Trailing whitespace ✅ Unordered Key
What is a
💡 A .env file or dotenv file is a simple text file containing all the environment variables of a project. Storing configuration in the environment variables is one of the tenets of the Manifesto of Twelve-Factor App. The .env file has a simple key-value format, for example: FOO=BAR. More information you can find in articles in English and Russian.
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 and Super-Linter) 🔥
Articles about dotenv-linter:
- [EN] Dotenv-linter: looking after the environment for you
- [EN] What's new in dotenv-linter v2.2.0?
- [EN] What are the key changes in dotenv-linter v3.0.0 release?
- [RU] Dotenv-linter: линтер .env файлов
- [RU] Что нового в dotenv-linter v2.2.1?
- [RU] Что нового в dotenv-linter v3.0.0?
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
Or a shorter way
$ curl -sSfL https://git.io/JLbXn | sh -s
Specify installation directory and version
$ curl -sSfL https://git.io/JLbXn | sh -s -- -b usr/local/bin v2.0.0
Alpine Linux (using wget)
$ wget -q -O - https://git.io/JLbXn | sh -s
You can find other installation methods here: https://dotenv-linter.github.io/#/installation ## 🚀 Usage #### ✅ Check By default, `dotenv-linter` checks all `.env` files in the current directory: ```shell $ dotenv-linter Checking .env .env:2 DuplicatedKey: The FOO key is duplicated .env:3 UnorderedKey: The BAR key should go before the FOO key Checking .env.test .env.test:1 LeadingCharacter: Invalid leading character detected Found 3 problems
It can also fix the found warnings with the
$ dotenv-linter fix Fixing .env 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
dotenv-linter can compare
.env files with each other and output the difference between them:
$ dotenv-linter compare .env .env.example Comparing .env Comparing .env.example .env is missing keys: BAR .env.example is missing keys: FOO
Other use cases you can find on the documentation site (https://dotenv-linter.github.io):
🚦 Continuous Integration
|Command||Mean [ms]||Min [ms]||Max [ms]||Relative|
||2.7 ± 0.4||2.0||4.3||1.00|
||162.6 ± 12.1||153.0||201.3||60.83 ± 10.20|
Content of .env file used for benchmarking
SPACED= KEY = VALUE SECRET="my value" SECRET=Already defined kebab-case-name=1 snake_case_name=2
Dotenv-linter is not just a linter for
.env files — it is also a contributor-friendly open-source project with the purpose of helping others learn Rust using a simple, but useful tool. 😊
In addition to studying Rust, this project has another goal — to promote love for open-source, help you with the first steps in it and give an opportunity to contribute to the open-source project written in Rust. ❤️
We act as a mentor within this project and help developers follow the path of a novice contributor from start to the top. 🤗
If you've ever wanted to contribute to open source, now you have a great opportunity:
👍 Similar projects
- wemake-services/dotenv-linter (Python)
This project exists thanks to all the people who contribute. [Contribute].
Become a financial contributor and help us sustain our community.
*Note that all licence references and agreements mentioned in the dotenv-linter README section above are relevant to that project's source code only.