File Forge

Десктопний застосунок для macOS, Windows і Linux, який стискає PDF і зображення та видаляє фон із фото без завантаження файлів на сервер. Я спроєктував і створив його.

Випущено2026Десктопний застосунок для macOS, Windows і Linux

Знімки застосунку з жовтня 2026 року з результатами, які він отримав для демонстраційних файлів; рамку вікна домальовано. Вікна інсталяторів - справжні знімки екрана, обрізані до вікна.

Огляд

File Forge стискає PDF, зображення JPEG, PNG і WebP та вирізає об'єкти з фотографій повністю на комп'ютері користувача. Пресети - від безвтратного, що зберігає кожен піксель, до режиму для читання з екрана; оригінали ніколи не змінюються. Застосунок встановлюється на macOS, Windows і Linux та оновлюється з релізів із перевіреним підписом. Конвертацію форматів та інструменти для відео й аудіо заплановано.

Завдання

Помітно зменшувати документи й зображення, не псуючи їх, на трьох операційних системах, і щоб файли ніколи не залишали комп'ютер користувача.

Що я зробив

Я написав рушії обробки на Rust, а інтерфейс на React і зібрав їх у застосунок Tauri. PDF-рушій переписує структуру файла, прибирає невикористані дані шрифтів і перекодовує зображення лише тоді, коли це дозволяє вибраний пресет. Видалення фону виконує модель SAM 2.1 локально після одноразового завантаження.

Результат

  • Стискання PDF із пресетами Lossless, Balanced, Maximum, Screen і власними налаштуваннями
  • Безвтратне й втратне стискання зображень JPEG, PNG і WebP
  • Офлайн-видалення фону з автоматичним або ручним вибором об'єкта
  • Інсталятори для macOS, Windows і Linux з оновленнями всередині застосунку, підпис яких перевіряється

Десктопний застосунок

Встановлюється й працює як нативний застосунок на:

  • macOS: macOS 11 або новіша на Mac з Apple Silicon та Intel, образ диска .dmg
  • Windows: 64-бітна Windows 10 або новіша, інсталятор .exe або пакет .msi
  • Linux: 64-бітний Linux: AppImage, пакет .deb для Debian і Ubuntu або .rpm для Fedora та openSUSE

Маєте ідею проєкту?

Розкажіть, що хочете створити. Обговоримо обсяг роботи та наступні кроки.