Includes info about fork, future planes, and removal of old stuff

This commit is contained in:
Mr Finchum 2024-12-28 17:58:36 +01:00
parent 17f0c52a2f
commit 09f58c445c

View file

@ -8,12 +8,12 @@ This project is a *port* of my earlier work, an collection of [bash script](http
**Please check** if a new branch is available and read the **changelog** to see the progress and current features of the program. The README might sometimes lag behind. **Please check** if a new branch is available and read the **changelog** to see the progress and current features of the program. The README might sometimes lag behind.
OPTIMA-35 is evolving! The project is transitioning from a terminal-based user interface (TUI) to a graphical user interface (GUI) using Qt (via PySide6). First TUI version was forked to [OPTIMA-35 TUI](https://gitlab.com/python_projects3802849/optima-35-tui). I intend to keep the TUI version functional since it is usefull for headless setup.
## **Current Status** ## **Current Status**
- While the program works and core features are available, there are currently no safety checks in place. For example, the program will write / save an image without verifying if a file with the same name already exists. **The README is temporarily outdated** while the GUI version is under development. For the latest updates, please check the **changelog**—I always maintain a detailed log of changes.
- Additionally, while EXIF data/metadata should be implemented correctly, there is a possibility of overlooked issues. In the worst case, a program might throw an error when handling EXIF data, though this has not occurred so far.
### Available Features: ### Available Features:
- Initial basic TUI functionality using `simple_term_menu`
- Core features: - Core features:
- resizing - resizing
- renaming - renaming
@ -23,10 +23,6 @@ This project is a *port* of my earlier work, an collection of [bash script](http
- Exif management - Exif management
- Add watermark - Add watermark
**Gif of program in action**
![my-gif](https://gitlab.com/python_projects3802849/optima-35/-/raw/main/media/v0.1.0-demo.gif?ref_type=heads)
## Dependencies ## Dependencies
To run **OPTIMA-35**, the following Python libraries are required: To run **OPTIMA-35**, the following Python libraries are required:
@ -34,29 +30,22 @@ To run **OPTIMA-35**, the following Python libraries are required:
- **pyyaml**: To handle YAML files for configuration and settings. - **pyyaml**: To handle YAML files for configuration and settings.
- **piexif**: To read, modify, and write EXIF metadata. - **piexif**: To read, modify, and write EXIF metadata.
- **Pillow**: For image processing. - **Pillow**: For image processing.
- **simple\_term\_menu**: For building the initial TUI interface. - **pyside6**: GUI
### Installing Dependencies ### Installing Dependencies
You can install the dependencies using `pip`: You can install the dependencies using `pip`:
```bash ```bash
pip install textual pyyaml piexif pillow simple-term-menu pip install pyyaml piexif pillow pyside6
``` ```
Alternatively, you can use `conda` or its alternatives (`anaconda`, `mamba`, `micromamba`): Alternatively, you can use `conda` or its alternatives (`anaconda`, `mamba`, `micromamba`):
```bash ```bash
conda install -c conda-forge textual pyyaml piexif pillow simple-term-menu conda install -c conda-forge pyyaml piexif pillow pyside6
``` ```
## Development Approach
Compared to my previous project, [FTL Save Manager](https://gitlab.com/python_projects3802849/ftl-save-manager), this project emphasizes:
- **Enhanced Modularity**: Classes and components are organized into separate files, making the codebase more maintainable and scalable.
- **Improved Design Principles**: Focus on creating reusable and flexible code for future expansion.
- **Slower Code Pushes**: Updates and code releases will be less frequent but of higher quality, ensuring stability and adherence to best practices.
# Use of LLMs # Use of LLMs
In the interest of transparency, I disclose that Generative AI (GAI) large language models (LLMs), including OpenAIs ChatGPT and Ollama models (e.g., OpenCoder and Qwen2.5-coder), have been used to assist in this project. In the interest of transparency, I disclose that Generative AI (GAI) large language models (LLMs), including OpenAIs ChatGPT and Ollama models (e.g., OpenCoder and Qwen2.5-coder), have been used to assist in this project.
@ -68,8 +57,9 @@ In the interest of transparency, I disclose that Generative AI (GAI) large langu
In cases where LLMs contribute directly to code or provide substantial optimizations, such contributions will be disclosed and documented in the relevant sections of the codebase. In cases where LLMs contribute directly to code or provide substantial optimizations, such contributions will be disclosed and documented in the relevant sections of the codebase.
mradermacher gguf Q4K-M Instruct version of infly/OpenCoder-1.5B **Ollama**
unsloth gguf Q4K_M Instruct version of both Qwen/QWEN2 1.5B and 3B - mradermacher gguf Q4K-M Instruct version of infly/OpenCoder-1.5B
- unsloth gguf Q4K_M Instruct version of both Qwen/QWEN2 1.5B and 3B
### References ### References
1. **Huang, Siming, et al.** 1. **Huang, Siming, et al.**