Skip to content
SERENUS-StudioPublic

About

A native desktop utility for converting images, PDFs, audio, video, subtitles, and archives, with a radial action menu and local file processing

Topics

Resources

Stars

4 stars

Watchers

2 watching

Forks

Repository files navigation

Ceyloro

Konverter file lokal yang bekerja dari menu bar—pilih file, arahkan ke format tujuan, selesai.

Preview release Windows build macOS CI License

Ceyloro dirancang untuk satu hal: membuat konversi file terasa sesingkat mungkin. Di macOS, cukup tahan Shift sambil menarik file dari Finder. Roda konversi muncul di posisi kursor dan menampilkan format yang tersedia untuk file tersebut.

Semua pemrosesan berjalan lokal. File asli tidak diubah, ditimpa, atau diunggah ke server.

Download

Platform Paket Checksum
macOS Universal (Intel + Apple Silicon) Download Ceyloro untuk macOS SHA-256
Windows x64 Download Ceyloro untuk Windows x64 SHA-256
Windows ARM64 Download Ceyloro untuk Windows ARM64 SHA-256

Paket di atas adalah release build mandiri (self-contained). Build macOS bersifat universal (x86_64 + arm64) dan menyertakan biner FFmpeg universal. Paket Windows bersifat self-contained (tidak memerlukan instalasi .NET terpisah), membawa biner ffmpeg.exe dan ffprobe.exe resmi yang sesuai arsitektur, serta dilengkapi file verifikasi checksum SHA-256 (.sha256).

Ukuran paket dan detail lengkap setiap versi tersedia di halaman releases.

Memperbarui Ceyloro

Ceyloro dapat memeriksa release terbaru langsung dari GitHub resmi. Buka menu ikon Ceyloro di menu bar, lalu pilih Periksa Pembaruan…. Jika versi baru tersedia, dialog akan menampilkan catatan perubahan dari release tersebut.

Saat kamu memilih Perbarui Sekarang, Ceyloro akan mengunduh paket macOS, memeriksa SHA-256, menutup versi lama, menggantinya di lokasi yang sama, lalu membuka versi baru secara otomatis. File asli dan versi lama tetap aman sampai paket baru selesai diverifikasi. Fitur ini memerlukan folder aplikasi yang bisa ditulis oleh akun pengguna; jika Ceyloro berada di folder sistem yang dilindungi, pindahkan ke Applications milik pengguna atau berikan izin yang diminta macOS.

Updater hanya menerima paket macOS dan checksum dari release resmi repository Ceyloro. Jika tidak ada checksum yang cocok, pembaruan dibatalkan.

Membuka aplikasi preview

Paket preview belum ditandatangani secara resmi.

  • macOS: buka aplikasi sekali dengan klik kanan Open. Jika macOS tetap memblokirnya, buka System Settings › Privacy & Security, gulir ke bagian keamanan, lalu pilih Open Anyway untuk Ceyloro. Setelah itu konfirmasi Open.
  • Windows: jika SmartScreen muncul, pilih More info, lalu Run anyway hanya jika paket diunduh dari halaman Release resmi Ceyloro.

Cara menggunakan

macOS

  1. Unduh dan buka Ceyloro-macOS-universal.zip.
  2. Pindahkan Ceyloro.app ke folder Applications.
  3. Jalankan Ceyloro; ikon akan muncul di menu bar.
  4. Di Finder, tahan Shift lalu tarik satu atau beberapa file.
  5. Lepaskan file pada format tujuan di roda.

Untuk membuka roda tanpa drag (fallback), pilih satu atau beberapa file di Finder lalu tekan Shift + Spasi. Tekan Esc atau lepaskan file di luar area target untuk membatalkan.

Izin macOS (First-Run)

  • Aksesibilitas (Accessibility): Diperlukan agar Ceyloro dapat mendeteksi gestur kursor Shift-drag global dan hotkey Shift + Spasi. Prompt sistem akan muncul otomatis saat pertama kali dibuka.
  • Otomatisasi (Automation): Diperlukan saat menggunakan shortcut Shift + Spasi agar Ceyloro dapat membaca file yang sedang dipilih di Finder melalui Apple Events. Jika belum diizinkan, Ceyloro akan menampilkan notifikasi pengingat dengan tombol langsung ke Pengaturan Sistem.

Windows

  1. Unduh dan ekstrak Ceyloro-Windows-x64.zip.
  2. Jalankan Ceyloro.exe.
  3. Tekan Ctrl + Alt + Space untuk membuka roda.
  4. Tarik file dari Explorer ke roda, lalu lepaskan pada format tujuan.

Paket Windows yang sudah terbit adalah preview x64. Workflow rilis saat ini menyiapkan paket terpisah untuk x64 dan ARM64; paket untuk kode terbaru baru terbit setelah tag rilis dibuat. Shell Windows menggunakan hotkey untuk membuka roda terlebih dahulu; gestur menahan Shift sambil menarik file dari Finder belum tersedia di Windows.

Paket release Windows sudah membawa FFmpeg LGPL yang sudah diverifikasi. Untuk build dari source, letakkan ffmpeg.exe LGPL di samping Ceyloro.exe atau pilih lokasinya melalui menu Pengaturan.

Yang bisa dilakukan

Jenis file Format tujuan
Gambar JPG, PNG, HEIC, TIFF, PDF
PDF JPG, PNG per halaman, TXT dengan OCR untuk PDF scan, DOCX best-effort untuk PDF berteks
Spreadsheet (XLS, XLSX, ODS) PDF, CSV per sheet
Presentasi (PPT, PPTX, ODP) PDF, PNG per slide
Audio MP3, M4A, WAV, FLAC, OGG, OPUS, AIFF
Video MP4, MOV, MKV, WebM, AVI, WMV, GIF, MP3, M4A, WAV, FLAC, OGG, OPUS, AIFF
Subtitle SRT, VTT
Arsip ZIP, TAR, TAR.GZ

Format yang tidak tersedia pada sistem atau backend konversi akan disembunyikan dari roda. Dukungan format dapat berbeda antara macOS dan Windows.

Fitur lain yang tersedia:

  • konversi batch dengan hasil per file;
  • batch tetap berjalan ketika salah satu file gagal;
  • output multi-halaman sebagai folder atau ZIP;
  • penggabungan beberapa gambar menjadi satu PDF;
  • pengaturan kualitas dan folder output;
  • progres, pembatalan, serta penamaan output anti-timpa;
  • kompresi gambar, audio, video, PDF, dan dokumen umum;
  • navigasi roda menggunakan keyboard dan angka 1–9.

Konversi PDF ke DOCX adalah upaya terbaik: PDF berteks diekstrak per halaman lalu disusun ulang oleh pandoc, sehingga tabel, kolom, dan posisi visual yang kompleks dapat berubah. PDF scan diarahkan ke OCR offline Vision dan keluaran teksnya dapat dicari/disalin. Laporan kemiripan visual dan alternatif PDF yang bisa dicari masih menjadi pekerjaan lanjutan Fase B.

Spreadsheet dengan beberapa sheet menghasilkan folder atau ZIP berisi satu CSV per sheet. Presentasi menghasilkan folder atau ZIP berisi satu PNG per slide.

Kompresi

Buka mode Tools dengan menahan Option saat drag di macOS, lalu pilih Kompres. Di Windows, Kompres muncul sebagai target pertama setelah file ditarik ke roda. Gambar, audio, dan video tetap memakai ekstensi sumber dengan encoding yang lebih ringan. PDF dirender ulang dengan preset seimbang. Dokumen umum seperti DOCX, XLSX, PPTX, RTF, TXT, dan Markdown dikemas menjadi ZIP agar file asli tetap utuh. Hasil selalu diberi nama baru dengan suffix -terkompres.

Privasi dan keamanan file

  • Pemrosesan Offline Penuh: Semua konversi diproses secara lokal di perangkat Anda tanpa transmisi jaringan atau telemetri.
  • Integritas File Sumber: File sumber tidak pernah diubah, dihapus, atau ditimpa.
  • Proteksi Penamaan Anti-Timpa: File tujuan diberi nama unik menggunakan reservasi atomik tingkat kernel (O_CREAT | O_EXCL) untuk mencegah tabrakan berkas antar-proses.
  • Pembersihan File Sementara: Seluruh staging konversi diisolasi dalam subdirektori sementara (Ceyloro-...) dan langsung dihapus saat konversi berhasil, dibatalkan, gagal, atau saat aplikasi ditutup.
  • Sanitasi Log: Log aplikasi hanya disimpan lokal di ~/Library/Logs/Ceyloro/app.log, path pengguna disamarkan (~), dan berkas log dirotasi otomatis saat mencapai 1 MB.
  • Pelaporan Batch Transparan: Konversi banyak file melaporkan status keberhasilan dan kegagalan per file secara independen tanpa menghentikan berkas lainnya.

Status platform

Platform Status Catatan
macOS Intel Preview App universal, target macOS 13+
macOS Apple Silicon Preview App universal, target macOS 13+
Windows x64 + ARM64 Preview CI membangun kedua arsitektur; paket resmi bergantung pada tag rilis berikutnya

Paket preview belum melalui Apple notarization atau Windows code signing. Sistem operasi dapat menampilkan peringatan keamanan saat pertama kali aplikasi dibuka.

Pengembangan

macOS

Kebutuhan:

  • macOS 13 atau lebih baru;
  • Xcode penuh;
  • Swift 5.9 atau lebih baru.

Build dan test:

swift test
./scripts/check.sh --universal
./scripts/build-app.sh

Jika Xcode tidak berada di lokasi standar:

DEVELOPER_DIR=/path/to/Xcode.app/Contents/Developer swift test

Membundel engine dokumen

Untuk build development, LibreOffice dan pandoc dapat dipasang manual di Mac. Sebelum membuat paket yang akan dibagikan, jalankan staging agar keduanya ikut masuk ke dalam Ceyloro.app dan pengguna akhir tidak perlu memasang engine:

sh ./scripts/stage-document-engines.sh
./scripts/build-app.sh

Script juga menerima folder yang sudah disiapkan sendiri melalui CEYLORO_DOCUMENT_ENGINES_PATH. Folder tersebut harus berisi LibreOffice.app/Contents/MacOS/soffice dan pandoc/pandoc. Binary engine tidak disimpan di Git karena ukurannya besar dan masing-masing memiliki ketentuan redistribusi pihak ketiga.

Windows

Kebutuhan:

  • Windows x64 atau ARM64;
  • Visual Studio 2022 dengan workload .NET desktop development;
  • .NET 8 SDK.

Build shell Windows:

# Build x64 dan ARM64
dotnet build Windows/Ceyloro.Windows/Ceyloro.Windows.csproj -c Release -r win-x64
dotnet build Windows/Ceyloro.Windows/Ceyloro.Windows.csproj -c Release -r win-arm64

# Jalankan unit & integration tests Windows
dotnet run --project Windows/Ceyloro.Windows.Tests/Ceyloro.Windows.Tests.csproj -c Release -r win-x64

Untuk paket Windows yang sudah mandiri, pasang LibreOffice dan pandoc di mesin build lalu jalankan staging berikut sebelum dotnet publish:

.\scripts\stage-document-engines.ps1 -Destination document-engines
dotnet publish Windows/Ceyloro.Windows/Ceyloro.Windows.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true --output publish

Salin folder document-engines ke samping Ceyloro.exe sebagai DocumentEngines. Shell akan memprioritaskan engine yang dibundel; instalasi LibreOffice/pandoc pengguna tidak diperlukan.

Workflow GitHub Actions membangun shell Windows untuk x64 dan ARM64 setiap ada perubahan terkait Windows. Workflow rilis membuat paket desktop untuk kedua arsitektur pada setiap tag v*.

Arsitektur

Ceyloro menggunakan pendekatan open-core:

  • CeyloroCore berisi logika yang dapat diuji—format, hit-testing, penamaan output, job runner, dan aturan konversi.
  • CeyloroEngine berisi kontrak engine lintas-platform.
  • Shell macOS menggunakan AppKit, ImageIO, PDFKit, AVFoundation, dan FFmpeg.
  • Shell Windows menggunakan WinForms dan FFmpeg.

Komponen proyek memiliki batas lisensi berikut:

Komponen Lisensi Catatan
CeyloroCore MIT Logika format, hit-testing, penamaan, job runner, dan kebijakan konversi
CeyloroEngine MIT Kontrak engine lintas-platform
Sources/Ceyloro/ Proprietary App macOS, UI, menu bar, branding, dan integrasi desktop
Windows/ Proprietary Shell Windows, UI, tray, dan integrasi desktop
FFmpeg/libshine Lisensi pihak ketiga Mengikuti lisensi dan notice masing-masing komponen

Kode app terlihat di repo agar build dan audit dapat dilakukan, tetapi visibilitas source tidak berarti izin redistribusi. Lihat LICENSE dan LICENSE-APP.md sebelum menggunakan komponen proprietary.

Roadmap

  • installer dan auto-update untuk Windows;
  • code signing dan notarization untuk distribusi publik;
  • parity fitur penuh antara shell macOS dan Windows;
  • opsi komersial dan fitur premium.

Status implementasi fitur Tools dicatat di docs/PHASE4-TOOLS.md.

Kontribusi dan laporan masalah

Bug report dan usulan fitur dapat dibuat melalui GitHub Issues. Sertakan platform, versi Ceyloro, format sumber, format tujuan, dan langkah reproduksi jika memungkinkan.

Lisensi

CeyloroCore dan CeyloroEngine dilisensikan di bawah MIT License. App Ceyloro, shell Windows, dan komponen proprietary lainnya mengikuti ketentuan terpisah. FFmpeg dan libshine mengikuti lisensi distribusinya sendiri.

About

A native desktop utility for converting images, PDFs, audio, video, subtitles, and archives, with a radial action menu and local file processing

Topics

Resources

Stars

4 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages