npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

env-validator-cli

v1.0.1

Published

CLI tool to validate .env files based on a config file

Readme

env-validator

env-validator bir CLI aracıdır. .env dosyalarını belirtilen bir config dosyasına göre doğrulamanıza yardımcı olur. Değişkenlerin varlığını, tiplerini, değerlerini (regex ve enum) kontrol edebilir ve eksik ya da yanlış yapılandırılmış değişkenleri raporlar.

📖 Diğer Diller

🚀 Özellikler

  • Birden fazla .env dosyasını kontrol edebilir.
  • Geliştirici tarafından belirlenen kurallara göre:
    • Değişkenlerin varlığını kontrol eder.
    • Değişken tiplerini (string, number, boolean, enum) doğrular.
    • Regex ve enum kurallarını uygular.
    • Bir .env dosyasında var olup diğerinde eksik olan değişkenleri raporlar.
    • Bir .env dosyasında var olup <config>.json dosyasında tanımlanmayan değişkenleri raporlar.
  • Kolay CLI kullanımı.

🛠️ Kurulum

NPM üzerinden yükleme:

Paketinizi şu komutla global olarak yükleyin:

npm install -g env-validator-cli

Doğruluğunu kontrol edin:

Kurulumun başarılı olduğunu doğrulamak için:

env-validator-cli --help

📂 Yapılandırma (Config Dosyası)

Aracın çalışması için bir config dosyasına ihtiyacı vardır. Config dosyasını JSON, TS veya JS formatında oluşturabilirsiniz.

Özellikler

  • envPath:
    • .env dosyalarının bulunduğu dizini belirtir.
    • Varsayılan olarak pwd (komutun çalıştığı mevcut dizin) kullanılır.
  • envFiles:
    • Kontrol edilecek .env dosyalarının isimlerini belirten bir dizidir.
    • Varsayılan olarak [".env"] şeklindedir.
  • variables:
    • .env dosyalarında bulunması gereken değişkenlerin tanımlarını içerir.
    • Her değişken için:
      • required: Değişkenin zorunlu olup olmadığını belirtir (true veya false).
      • type: Değişkenin tipi (string, number, boolean, enum).
      • regex: Değişkenin değerinin eşleşmesi gereken bir düzenli ifade (isteğe bağlı).
      • enum: Değişkenin alabileceği değerleri belirten bir liste (type enum olduğu durumda kullanılmalıdır).

Örnek Config Dosyası (config.json):

{
  "envPath": "./envs",
  "envFiles": [".env", ".env.production"],
  "variables": {
    "API_KEY": { "required": true, "type": "string" },
    "DB_PORT": { "required": true, "type": "number" },
    "ENV_MODE": {
      "required": false,
      "type": "enum",
      "enum": ["development", "staging", "production"]
    },
    "EMAIL": {
      "required": false,
      "type": "string",
      "regex": "^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,}$"
    }
  }
}

🔧 Kullanım

Komut:

Config dosyanızın yolunu belirterek çalıştırabilirsiniz:

env-validator-cli --config=path/to/config.json

Örnek Çıktılar:

  1. Tüm değişkenler doğruysa:

    All environment variables are valid.
  2. Eksik veya hatalı değişkenler varsa:

    Missing required variable: API_KEY in .env.production
    Invalid type for DB_PORT in .env: Expected number, got string

📜 Lisans

Bu proje MIT lisansı ile lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakabilirsiniz.

🤝 Katkı Sağlama

Katkıda bulunmak isterseniz, lütfen bir pull request gönderin veya bir issue açın.