dotenv-to-json — .env を JSON に変換するシンプルCLI

Tool

概要

dotenv-to-json は、.env 形式の環境変数ファイルを JSON 形式に変換するシンプルなコマンドラインツールです。ローカルの .env ファイルを指定して JSON を生成するだけでなく、標準入力から読み込んで標準出力へ書き出すこともできるため、パイプ処理や CI/CD のワークフローへ組み込みやすい作りになっています。インストールは Makefile 経由や Astral の uv パッケージマネージャを使って手軽に行え、ライセンスやソースが小規模で明快なため導入・監査が容易です。

GitHub

リポジトリの統計情報

  • スター数: 9
  • フォーク数: 0
  • ウォッチャー数: 9
  • コミット数: 3
  • ファイル数: 8
  • メインの言語: Python

主な特徴

  • .env ファイルを JSON に変換するシンプルな CLI(コマンド名: env2json)
  • 標準入力(stdin)・標準出力(stdout)に対応しパイプ処理が可能
  • 出力先のファイル指定オプションあり(-i, -o のパターン)
  • Makefile や uv を使った簡単インストール、ライセンス明示で導入が容易

技術的なポイント

本プロジェクトは小さな Python コードベースで、典型的な .env パーサー+JSON シリアライズの構成を取っています。CLI はファイル指定と ”-” を用いた stdin 指定に対応しており、Unix の標準的なツールチェーン(cat とパイプ)と組み合わせて使える点が利便性の要です。インストール方法として Makefile を通す流れと、Astral エコシステムの uv パッケージマネージャでの登録を想定しているため、開発者はローカル開発でも CI 配布でも同じ手順を使えます。

パーシング面では、.env の「KEY=VALUE」形式を読み取り、コメント行や空行を無視してキーと値のマッピングを作成する実装が想定されます。値の扱いは基本的に文字列として扱い、必要に応じてクォートの除去やエスケープ処理を行う実装が一般的です。拡張点としては、型推定(数値・真偽値の自動変換)、ネスト表現への対応、複数ファイルのマージ、あるいはセキュアにシークレットを扱う機能などが挙げられます。小規模で依存も少なそうなため、セキュリティ監査やカスタム要件への対応も比較的容易です。

また、ライセンスファイルを含むクリーンなリポジトリ構成は商用プロジェクトへの採用の際にも安心材料になり、Makefile により CI での lint・インストール・テストの自動化がしやすい点も評価できます。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • .python-version: file
  • LICENSE: file
  • Makefile: file
  • README.md: file

他のファイル(例)

  • 実行ファイルやライブラリ本体(Python スクリプト)
  • パッケージ設定やインストール用メタ情報

…他 3 ファイル

まとめ

小規模で即導入できる、.env→JSON のシンプルな CLI ツール。

リポジトリ情報:

READMEの抜粋:

dotenv-to-json

A simple CLI tool to convert .env files to JSON format.

Installation

Install using uv package manager:

make install

Or install directly:

uv tool install .

Usage

Basic Usage

Convert a .env file to JSON:

env2json -i .env

Read from stdin

cat .env | env2json

or

env2json -i -

Write to a file

env2json -i .env -o output.json