BatchResize is a front end for Image Magick to process images in batch. You can check out the source code either by downloading it on Sourceforge or on Gitlab.
To launch a resize (or any other operation that Image Magick supports), you can either pass the image path as argument to BatchResize, launch BatchResize and drag and drop files into the main window or click on the add icon (first icon on the left) and select the files you want to process.
Note: All the files will be overwritten with no warning.
By default BatchResize launches magick with the pre-set arguments on the files you specified and overwrites the files with the processed ones once the operation is completed. In other words, BatchResize runs the following command for you:
magick /path/to/image.png arguments specified /path/to/image.png
You can force aurguments to pass to magick different from the onces pre-set by running:
BatchResize -force "some other arguments" /path/to/image.png
It is important that the arguments specified after -force are between quotes ("). In this case the image passed as argument will be processed using the new arguments specified and the line will appear in red in the main window. Note that only the image passed with the argument -force will be processed using the forced arguments, all of the images opened after and before will not be affected.
Here is a quick guide to start using BatchResize:
Note: All processed files will be overwritten with no warning!

The main window consists on a toolbar for quick actions and a list view. The list displays the files completed (1), running (2) and in queue (3). You can click on an item from this list to run certain actions.

The toolbar can perform the following quick actions:
You can also click right on an item from the list to open a menu which links to some of these quick actions.

Magick arguments: You can check the Image Magick documentation to learn more about the syntaxe. Note that the argument concerning the output file is passed automatically to magick so you should not add it.
Note: All existing files will be overwritten with no warning.
Force output format: Check the box to force the output format. You then need to specify the extention of the format that you want. For example write "PNG" to output ".PNG" files no matter what format the input files are. If the format is not recognized by Image Magick, the output format will be the same as the input format but the file extention of the output will be changed. Note the the output extention will be the same as what you type. If you enter "jPeG" the output format will be set to jpeg and the extention of the output file will be ".jPeG".
Output into a different folder: Check the box to output the files into a different folder. You can then specify the folder you want to output to. Note that once again, all existing files in this folder will be overwritten with no warning.
Image Magick Path: You can specify the absolute path to the magick executable.
On windows this allows you to use a separate install of Image Magick and update it independantly from Batch Resize.
On Linux you need to have the Image Magick package installed on your system. You can then specify a path to an AppImage or simply the command to call Image Magick, i.e. convert on most configurations.
Path to the icon pack: You can specify a different absolute path than the default one. By default BatchResize comes with icons packs taken from Breeze icons, Tango icons and Faenza icons.
Advanced settings: The main instance of BatchResize launches a local server on which all next instances will connect and send the files passed into argument. If for some reasons you want to modify the address and port number used by the local server, you can do it through the advanced settings.