# zenith-cli **zenith-cli** — консольная утилита для Linux-дистрибутивов, которая позволяет скачать изображение и автоматически создать на его основе несколько цветовых палитр. ## ✨ Возможности - 🖼️ Скачивание изображений по ссылке - 🎨 Автоматическая генерация цветовых палитр - 🌑 Тёмная палитра - ☀️ Светлая палитра - 🌙 Тёмная пастельная палитра - 🌸 Светлая пастельная палитра - 📁 Сохранение изображения и палитр в указанные директории ## 🎨 Генерируемые палитры Для каждого изображения `zenith-cli` создаёт четыре варианта цветовой схемы: | Палитра | Описание | | --- | --- | | 🌑 Dark | Тёмная цветовая схема | | ☀️ Light | Светлая цветовая схема | | 🌙 Dark Pastel | Тёмная пастельная схема | | 🌸 Light Pastel | Светлая пастельная схема | Все сгенерированные палитры сохраняются в рабочую директорию или в путь, указанный пользователем. ## 📦 Зависимости Перед сборкой убедитесь, что в системе установлены: - **CMake** - **GCC** - **G++** - **curl** - **OpenCV** ### Ubuntu / Debian ``` sudo apt install cmake gcc g++ curl libopencv-dev ``` ### Arch Linux ``` sudo pacman -S cmake gcc curl opencv ``` ## 🔨 Сборка Клонируйте репозиторий и запустите скрипт сборки: ``` git clone cd zenith-cli chmod +x build.sh ./build.sh ``` После успешной сборки будет доступна утилита: ``` ./zenith-cli ``` ## 🚀 Использование Общий формат команды: ``` ./zenith-cli --link="link" --scheme-output="path" --wall-output="path" ``` ### Скачать изображение Если передать пустую строку в `--wall-output`, изображение будет сохранено в директорию утилиты: ``` ./zenith-cli \ --link="https://w.wallhaven.cc/full/gw/wallhaven-gwd313.jpg" \ --wall-output="" ``` ### Указать директорию для обоев ``` ./zenith-cli \ --link="https://w.wallhaven.cc/full/gw/wallhaven-gwd313.jpg" \ --wall-output="/home/ivan/" ``` Также можно использовать домашнюю директорию: ``` ./zenith-cli \ --link="https://w.wallhaven.cc/full/gw/wallhaven-gwd313.jpg" \ --wall-output="~/" ``` ### Указать директорию для палитр ``` ./zenith-cli \ --link="https://w.wallhaven.cc/full/gw/wallhaven-gwd313.jpg" \ --scheme-output="/home/ivan/.config/zenith/" ``` ## ⚙️ Аргументы | Аргумент | Описание | | --- | --- | | `-h`, `--help` | Показать справку | | `--link=` | Ссылка на изображение с Wallhaven | | `--scheme-output=` | Директория для сохранения палитр | | `--wall-output=` | Директория для сохранения обоев | ## 💡 Пример Допустим, необходимо скачать обои с Wallhaven и сохранить изображение в домашнюю директорию: ``` ./zenith-cli \ --link="https://w.wallhaven.cc/full/gw/wallhaven-gwd313.jpg" \ --wall-output="~/" ``` После обработки `zenith-cli` сформирует несколько цветовых схем на основе изображения и сохранит их в соответствующую директорию. ## 🆘 Справка Получить список доступных аргументов можно с помощью: ``` ./zenith-cli --help ``` ``` Usage: -h, --help show this help message and exit --link= ссылка на изображение с сайта wallhave.cc --scheme-output= директория для сохранения палитр --wall-output= директория для сохранения обоев ``` ## 📁 Структура проекта ``` zenith-cli/ ├── main.cpp ├── libs/ │ ├── argparse.c │ └── argparse.h ├── CMakeLists.txt ├── build.sh ├── LICENSE ├── README.md └── .gitignore ``` ## 🛠️ Технологии - **C++** — основная логика приложения - **OpenCV** — обработка изображений и генерация палитр - **curl** — загрузка изображений - **CMake** — система сборки - **argparse** — обработка аргументов командной строки ## 📄 Лицензия MIT ---