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 <https://zenithcode.duckdns.org/s13bby/zenith-cli.git>
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=<str> Ссылка на изображение с Wallhaven
--scheme-output=<str> Директория для сохранения палитр
--wall-output=<str> Директория для сохранения обоев

💡 Пример

Допустим, необходимо скачать обои с 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=<str>              ссылка на изображение с сайта wallhave.cc
    --scheme-output=<str>     директория для сохранения палитр
    --wall-output=<str>       директория для сохранения обоев

📁 Структура проекта

zenith-cli/
├── main.cpp
├── lib/
│   ├── argparse.c
│   └── argparse.h
├── CMakeLists.txt
├── build.sh
├── LICENSE
├── README.md
└── .gitignore

🛠️ Технологии

  • C++ — основная логика приложения
  • OpenCV — обработка изображений и генерация палитр
  • curl — загрузка изображений
  • CMake — система сборки
  • argparse — обработка аргументов командной строки

📄 Лицензия

MIT


S
Description
No description provided
Readme MIT 75 KiB
Languages
C 57%
C++ 38.5%
Shell 2.9%
CMake 1.6%