Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/darklight1337/pyimorg

Command-line tool for organizing images
https://github.com/darklight1337/pyimorg

cli file-manager image python

Last synced: 10 days ago
JSON representation

Command-line tool for organizing images

Awesome Lists containing this project

README

        

# Image Organizer

`pyimorg` is a command-line tool for organizing images.

## Installation

### Requirements

- [Python](https://www.python.org/) 3.8+

### Procedure

1. Run `python -m pip install git+https://github.com/DarkLight1337/pyimorg.git` to install the package from this repository.

## Usage

To avoid corrupting existing images, `pyimorg` never modifies the input directories; instead, it outputs the results in a new directory, copying the input images as necessary.

### Compare images

#### Syntax

```
pyimorg diff
```

#### Options

- `-h ` to specify the hash function for comparing image contents (`sha256` or `sha512`).
- `-t ` to enable parallel computing via multithreading.

### Group by timestamp

#### Syntax

```
pyimorg groupby
```

#### Options

- `-g ` to specify the type of group (`year`, `month`, or `day`).
- `-t ` to enable parallel computing via multithreading.

## Development

### Requirements

- [Python](https://www.python.org/) 3.8+
- [Poetry](https://python-poetry.org/) 1.4+

### Setup

1. Clone this repository to your machine.
2. Run `poetry lock --no-update && poetry install --with dev` to setup the Python enviroment.

### Lint

1. [Setup](#setup) the development environment.
2. Run `poetry run deptry . && poetry run ruff check . && poetry run pyright .` to lint the code.

### Test

1. [Setup](#setup) the development environment.
2. Run `poetry run -- pytest` to test the code and output the coverage report.