Preserve/current gui
This commit is contained in:
parent
daf893ad6f
commit
683c494bcb
4 changed files with 48 additions and 51 deletions
|
@ -1,5 +1,8 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.1.0
|
||||||
|
- Preserved the current working GUI by pinning `optima35` to a specific version for guaranteed compatibility.
|
||||||
|
|
||||||
## 0.0.x
|
## 0.0.x
|
||||||
### 0.0.4-a2
|
### 0.0.4-a2
|
||||||
- Adding __version__ to `__init__.py` so version is automaticly updated in program as well as pypi.
|
- Adding __version__ to `__init__.py` so version is automaticly updated in program as well as pypi.
|
||||||
|
|
92
README.md
92
README.md
|
@ -1,68 +1,62 @@
|
||||||
# OptimaLab35
|
# **OptimaLab35**
|
||||||
|
[OptimaLab35](https://gitlab.com/CodeByMrFinchum/OptimaLab35) is a graphical and terminal user interface for [optima35](https://gitlab.com/CodeByMrFinchum/optima35). It is under **heavy development**, and both UI elements and cross-platform compatibility may change.
|
||||||
|
|
||||||
[OptimaLab35](https://gitlab.com/CodeByMrFinchum/OptimaLab35) is UI for [optima35](https://gitlab.com/CodeByMrFinchum/optima35), currently in heavy development.
|
|
||||||
|
|
||||||
## Overview
|
## **Overview**
|
||||||
|
|
||||||
**OPTIMA35** (**Organizing, Processing, Tweaking Images, and Modifying scanned Analogs from 35mm Film**) is a Python-based project designed to streamline the management and editing of metadata and images from analog photography. While it was created with analog photography in mind, it is versatile enough to handle any type of images.
|
**OptimaLab35** extends **OPTIMA35** (**Organizing, Processing, Tweaking Images, and Modifying scanned Analogs from 35mm Film**) by providing an intuitive interface for image and metadata management. While tailored for analog photography, it supports any type of image.
|
||||||
|
|
||||||
## Current Status
|
|
||||||
### Installation
|
|
||||||
install via pip and all dependencies will be installed (exept simple-term-menu which is used for TUI, but that package is only aviable for linux)
|
|
||||||
|
|
||||||
```Bash
|
## **Current Status**
|
||||||
|
|
||||||
|
### **Versioning and Compatibility**
|
||||||
|
|
||||||
|
The preserved version **v0.1.0** ensures stability with the current GUI design. It depends on **optima35==0.6.4**, a version confirmed to work seamlessly with this release. Future updates may introduce breaking changes, especially as the project evolves across platforms.
|
||||||
|
|
||||||
|
### **Installation**
|
||||||
|
|
||||||
|
Install via pip (dependencies are automatically managed, except for `simple-term-menu` used in TUI mode, which is Linux-only):
|
||||||
|
```bash
|
||||||
pip install OptimaLab35
|
pip install OptimaLab35
|
||||||
```
|
```
|
||||||
### Development and Versioning Notes
|
|
||||||
|
|
||||||
**OptimaLab35** is currently in an **alpha stage** and under active development. As a result:
|
|
||||||
- The README may occasionally be outdated.
|
|
||||||
- Users are encouraged to check for new branches and read the Changelog
|
|
||||||
- Bugs or unforeseen behavior may occur.
|
|
||||||
|
|
||||||
While the project follows a semantic versioning structure (major.minor.patch), breaking changes—typically reserved for major version increments—may also occur in minor version updates during this development phase. Please review the changelog carefully before updating.
|
|
||||||
|
|
||||||
**OptimaLab35** supports two modes: **GUI** and **TUI**.
|
|
||||||
- The **GUI** is loaded by default if **PySide6** is available.
|
|
||||||
- The **TUI** serves as a fallback when **PySide6** (PySide6 is a dependency..) is unavailable or can be started explicitly using the `--tui` option with `main.py`.
|
|
||||||
|
|
||||||
While all features are implemented and functional, the designs of both the GUI and TUI are not yet finalized. Some safety checks are still under development.
|
|
||||||
|
|
||||||
|
|
||||||
### OptimaLab35 used features from optima35 to:
|
## **Development and Notes**
|
||||||
**Image Processing:**
|
|
||||||
|
**Alpha Stage**
|
||||||
|
- UI designs (GUI and TUI) are evolving, and breaking changes may occur.
|
||||||
|
- The [**CHANGELOG**](https://gitlab.com/CodeByMrFinchum/OptimaLab35/-/blob/main/CHANGELOG.md) provides detailed updates.
|
||||||
|
- Some safety checks are still under development.
|
||||||
|
|
||||||
|
**Modes:**
|
||||||
|
- **GUI**: Default if **PySide6** is available.
|
||||||
|
- **TUI**: Fallback if **PySide6** is missing or can be explicitly started using the `--tui` flag.
|
||||||
|
|
||||||
|
## **Features**
|
||||||
|
|
||||||
|
### **Image Processing**
|
||||||
- Resizing
|
- Resizing
|
||||||
- Renaming with order adjustment
|
- Renaming with custom order
|
||||||
- Grayscale conversion
|
- Grayscale conversion
|
||||||
- Brightness adjustment
|
- Brightness and contrast adjustment
|
||||||
- Contrast adjustment
|
|
||||||
|
|
||||||
**EXIF Management:**
|
### **EXIF Management**
|
||||||
- Copy EXIF data
|
- Copy or add custom EXIF data
|
||||||
- Add custom EXIF information
|
- Add GPS coordinates
|
||||||
- Add GPS data
|
- Add or modify EXIF dates
|
||||||
- Add a date to EXIF
|
- Remove EXIF metadata
|
||||||
- Remove EXIF
|
|
||||||
|
|
||||||
**Watermarking**
|
### **Watermarking**
|
||||||
|
- Add customizable watermarks
|
||||||
|
|
||||||
|
## **Dependencies**
|
||||||
|
|
||||||
### Preview GUI
|
**GUI Mode:**
|
||||||
**GUI for OPTIMA-35** with KvArcDark theme on Linux
|
- `optima35`
|
||||||
OUT OF DATE, comming soon
|
- `pyside6`
|
||||||
|
|
||||||
### Preview TUI
|
**TUI Mode (Linux only):**
|
||||||
**asciinema recording for TUI**
|
- `simple-term-menu`
|
||||||
OUT OF DATE, comming soon
|
|
||||||
|
|
||||||
## Dependencies
|
|
||||||
|
|
||||||
**OPTIMA-35** has two modes: **GUI** and **TUI**. Each mode has its own set of dependencies, so you don’t need to install TUI dependencies if you only plan to use the GUI (and vice versa).
|
|
||||||
|
|
||||||
**Required Dependencies:**
|
|
||||||
- **optima35**
|
|
||||||
- **pyside6**: For the GUI mode.
|
|
||||||
- **simple_term_menu**: For the TUI mode.
|
|
||||||
|
|
||||||
# Use of LLMs
|
# Use of LLMs
|
||||||
In the interest of transparency, I disclose that Generative AI (GAI) large language models (LLMs), including OpenAI’s 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 OpenAI’s ChatGPT and Ollama models (e.g., OpenCoder and Qwen2.5-coder), have been used to assist in this project.
|
||||||
|
|
|
@ -9,7 +9,7 @@ authors = [{ name = "Mr. Finchum" }]
|
||||||
description = "User interface for OPTIMA35."
|
description = "User interface for OPTIMA35."
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
requires-python = ">=3.8"
|
requires-python = ">=3.8"
|
||||||
dependencies = ["optima35", "pyside6"]
|
dependencies = ["optima35==0.6.4", "pyside6", "PyYAML"]
|
||||||
classifiers = [
|
classifiers = [
|
||||||
"Programming Language :: Python :: 3",
|
"Programming Language :: Python :: 3",
|
||||||
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
|
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
__version__ = "0.0.4-a2"
|
__version__ = "0.1.0"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue