Skip to main content

Slimer reads your folder structure and file contents to transform it into a concise, readable string overview

Project description

Slimer

Slimer

Directory and File Content Visualisation CLI Tool

Slimer is a command line tool that helps you digest a folder structure and its file contents. It was designed to help with prompt engineering.

Features

  • Display directory structures in a tree-like format.
  • Show the content of files in the structure with an optional character limit.
  • Exclude or forcefully include specific files or directories.
  • Recognize and tag binary files, with an option to include/exclude them.
  • Limit the depth of directory exploration.
  • Copy the result to the clipboard or output to a file.
  • Filter the displayed files based on their modification time.
  • Include specific files based on their extension.

Installation

  • Ensure you have Python installed.
  • Install necessary dependencies:
pip install slimer

Dependencies

  • pyperclip: Used for copying output to clipboard.

Usage

To use Slimer, execute the slimer command and provide the necessary arguments:

slimer /path/to/directory -c -l 500 -e __pycache__ temp
Argument Description
-h, --help show this help message and exit
-c, --copy Copy the output to the clipboard.
-l LIMIT, --limit LIMIT Maximum number of characters to display from each file. No limit by default.
-d DEPTH, --depth DEPTH Maximum depth to explore in the directory structure.
-e [EXCLUDE ...], --exclude [EXCLUDE ...] List of files or directories to exclude.
-i [INCLUDE ...], --include [INCLUDE ...] List of files or directories to forcefully include even if they are in the exclude list.
-b, --binary Include binary files with a [Binary File] flag.
-t, --tree Only display the folder structure without file content.
-p PREPEND, --prepend PREPEND String to prepend at the beginning of the output.
-a APPEND, --append APPEND String to append at the end of the output.
-o OUTPUT, --output OUTPUT Path to a file where the output will be written. If not provided, prints to console.
-r RECENT, --recent RECENT Only display files modified within the last N minutes. Defaults to 10 minutes when no value is provided to the argument.
-f [FILE_EXTENSIONS ...], --file-extensions [FILE_EXTENSIONS ...] List of file extensions to exclusively display (e.g. .py .ts).
-v, --version show program's version number and exit
-s, --strip-comments Strip comments from the code in the output.

Author

Ben Villiere

Contributing

If you'd like to contribute to the development of Slimer, please create an issue or pull request in the project repository.

License

This project is licensed under the MIT License.

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

slimer-1.0.6.tar.gz (7.9 kB view hashes)

Uploaded Source

Built Distribution

slimer-1.0.6-py3-none-any.whl (8.9 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