Skip to main content

Lint your JSON files!

Project description

json-linter

Lint your JSON files!

Features

  • Check if keys are sorted alphabetically...
  • Check if your keys are either in camelCase, snake_case or kebab-case...
  • ...and automatically fix (some) of these issues!

Install

You need to have Python 3.10+ installed.

$ pip install json-linter

Usage

# Lint a single file...
$ json-linter my-file.json

# Lint multiple files...
$ json-linter a.json b.json

# Lint all files in a directory
$ json-linter files

# Lint all files in a directory recursively
$ json-linter files --recursive

# Lint all files in a directory recursively with .config and .cfg ending
$ json-linter files -r --extensions cfg config

# Fix files (will overwrite the file with a fixed version and then lint)
$ json-linter my-file.json --fix

# Overwrite configuration values
$ json-linter my-file.json --config-set naming_style=KEBAB_CASE indent=2

# Return results as json
$ json-linter my-file.json --json

Use as a package

from pathlib import Path

from json_linter import lint_file


results = lint_file(Path("./my-file.json"))

for result in results:
    if not result.was_successful:
        print(result.path, "failed!")

License

GNU General Public License v3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

json_linter-1.3.0-py3-none-any.whl (23.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page