Skip to main content

A tool to convert directory contents to JSON

Project description

DTJ (Directory to JSON)

Overview

DTJ (Directory to JSON) is a Python command-line tool, particularly useful for quickly generating and sharing representations of directory structures in a token-efficient manner, making it ideal for interactions with language models like ChatGPT.

Example output

dtj
[
    {
        "filename": "main.py",
        "content": "# Main application file\nimport app\n\napp.run()"
    },
    {
        "filename": "app.py",
        "content": "# App module\n\ndef run():\n    print('Running the app')"
    },
    {
        "filename": "utils.py",
        "content": "# Utility functions\n\ndef helper():\n    return 'Helper function'"
    }
]

Features

  • Convert directory contents to JSON format.
  • Include or exclude specific file types.
  • Recursive directory parsing.
  • Options for output: printing to console, saving to a file, or copying to the clipboard.

Installation

pip install dtj

Usage

Run DTJ from the command line with the following options:

python dtj.py <target-directory> [options]

If no target directory is specified, DTJ will default to the current working directory.

Options:

  • -i or --include: Specify file extensions to include (e.g., py, html).
  • -e or --exclude: Specify file extensions to exclude.
  • -o or --output-file: Set the output JSON file name.
  • -r or --recursive: Enable recursive search in directories.
  • -p or --print: Print the output using rich formatting.
  • -c or --clipboard: Copy the output to the clipboard.

Example

python DTJ.py myfolder -i py html -o output.json -r

This command will parse all .py and .html files in myfolder recursively and save the JSON output to output.json.

Authors

  • Adrian Galilea - Initial work

Acknowledgments

  • Hat tip to ChatGPT for assistance with project setup and documentation.

Project details


Download files

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

Source Distribution

dtj-0.1.2.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

dtj-0.1.2-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file dtj-0.1.2.tar.gz.

File metadata

  • Download URL: dtj-0.1.2.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for dtj-0.1.2.tar.gz
Algorithm Hash digest
SHA256 74db5854c936e14a5a26d9f8dd20442b734490bf3336bd69b9de6225c502d252
MD5 1da350c10db1e022a397b0567d22b868
BLAKE2b-256 aefc9d302ba6b3e39a1f2237c63387691944fb0734769cb5fc3708ea5707679d

See more details on using hashes here.

File details

Details for the file dtj-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: dtj-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for dtj-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bdd349e6c6da6a65721dcfe3555668a5bcba0b69e439ce24319dcabeb86b48e5
MD5 84f09ad1097411f7b8b4b6aabf4c6a87
BLAKE2b-256 f75da25fd14937907f2205d6c90a00aa12ba10c30a2e7a83436ff410313c386f

See more details on using hashes here.

Supported by

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