2 poin oleh GN⁺ 2024-05-04 | 1 komentar | Bagikan ke WhatsApp
  • Stirling PDF adalah platform penyunting PDF open source yang dapat melakukan penyuntingan, penandatanganan, redaksi, konversi, dan otomatisasi PDF tanpa mengirim dokumen ke layanan eksternal
  • Mendukung aplikasi desktop pribadi, UI browser, deployment di server sendiri, serta private API, sehingga bisa dijalankan sesuai lingkungan kerja
  • Menyediakan lebih dari 50 alat PDF, mencakup fitur seperti penggabungan, pemisahan, OCR, kompresi, serta pipeline no-code berbasis UI dan otomatisasi API
  • Untuk penggunaan enterprise, menyediakan SSO, audit, dan deployment on-premise; sebagian besar alat memiliki REST API sehingga dapat diintegrasikan dengan sistem yang sudah ada
  • Quick start dapat dilakukan dengan Docker: jalankan docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf, lalu buka http://localhost:8080

Yang disediakan Stirling PDF

  • Stirling PDF adalah platform penyunting PDF open source yang dapat berjalan sebagai aplikasi desktop pribadi, UI browser, maupun server yang di-host sendiri
  • Saat dideploy di server sendiri, private API dapat digunakan, dan pekerjaan PDF dapat diproses tanpa mengirim dokumen ke layanan eksternal
  • Pekerjaan utamanya mencakup penyuntingan, penandatanganan, redaksi, konversi, dan otomatisasi

Cakupan fitur utama

  • Menyediakan lebih dari 50 alat PDF
    • Penyuntingan
    • Penggabungan
    • Pemisahan
    • Penandatanganan
    • Redaksi
    • Konversi
    • OCR
    • Kompresi
  • Mendukung otomatisasi dan workflow
    • Pipeline no-code dapat dibuat dari UI
    • Jutaan PDF dapat diproses melalui API
  • Juga memiliki karakter sebagai platform developer
    • REST API tersedia untuk hampir semua alat
    • Dapat diintegrasikan ke sistem yang sudah ada
  • UI tersedia dalam lebih dari 40 bahasa
  • Daftar fitur lengkap dapat dilihat di Documentation

Cara deployment dan menjalankan

  • Lingkungan eksekusi yang didukung adalah klien desktop, UI browser, dan server yang di-host sendiri
  • Quick start dapat dilakukan dengan perintah Docker
docker run -p 8080:8080 docker.stirlingpdf.com/stirlingtools/stirling-pdf

Fitur enterprise dan operasional

  • Sebagai fitur kelas enterprise, menyediakan SSO, audit, dan deployment on-premise yang fleksibel
  • Informasi terkait Server Plan dan Enterprise tersedia di Server Plan & Enterprise

Pengembangan, kontribusi, dan dukungan

  • Resource utama
  • Kanal dukungan
  • Panduan kontribusi mengikuti CONTRIBUTING.md
  • Perintah build, pengembangan, dan pengujian menggunakan Task sebagai runner perintah terpadu
    • Mulai menjalankan editor dengan task dev
    • Lihat perintah yang sering digunakan dengan task
    • Isi lengkapnya ada di DeveloperGuide.md
  • Untuk menambahkan terjemahan, rujuk devGuide/HowToAddNewLanguage.md
  • Lisensinya adalah open-core, dengan detail tersedia di LICENSE

1 komentar

 
GN⁺ 2024-05-04
Komentar Hacker News
  • Menurut saya, yang benar-benar kurang di ekosistem PDF adalah tool open source terkait tanda tangan
    Tanda tangan PDF penting secara hukum di banyak wilayah dunia karena regulasi seperti eIDAS, tetapi selain Adobe atau tool proprietari yang mencurigakan, terlalu sulit untuk menandatangani dokumen PDF secara kriptografis. Kalaupun berhasil mencari cara menandatangani dengan LibreOffice atau poppler, sulit mendapatkan sertifikat yang terverifikasi tanpa mengeluarkan banyak uang
    Kalau ada yang bisa berperan seperti Let's Encrypt untuk sertifikat PDF dan S/MIME, kepercayaan publik sepertinya akan meningkat besar

    • Katanya perlu sertifikat yang terverifikasi, tetapi hanya dengan menempelkan gambar tanda tangan di macOS Preview pun ternyata bisa cukup jauh
    • Sangat setuju. Saya bekerja di perusahaan yang, dalam istilah eIDAS, merupakan TRA sekaligus QTSP, dan kami sedang membuat sesuatu terkait ini
      Library open source yang bagus untuk menangani PDF dan tanda tangan digital, termasuk tanda tangan PDF: https://github.com/MatthiasValvekens/pyHanko
      DSS Tool dari European Commission juga berguna. Cukup unggah satu PDF saja; tidak perlu memasukkan baik versi asli maupun versi yang sudah ditandatangani: https://ec.europa.eu/digital-building-blocks/DSS/webapp-demo...
      Perusahaannya adalah https://www.zealid.com/en/, dan di https://my.zealid.com/en Anda bisa melakukan onboarding jarak jauh secara gratis, lalu mengunduh dan mengunggah sertifikat terkualifikasi, melakukan tanda tangan QES, dan mengunduh PDF, semuanya gratis. Integrasi API juga tersedia
    • Benar sekali. Saya pernah bertanya kepada staf IT internal yang mahir Windows Server berapa lama waktu yang dibutuhkan untuk mengimplementasikan PKI dasar untuk penandatanganan dokumen internal, dan ekspresinya seperti melihat orang berkepala dua
    • Apakah macOS Preview tidak memenuhi kebutuhan ini?
  • Saya meng-host ini di rumah. Saya sendiri tidak memakainya; cukup pakai tool Linux CLI yang menjadi dasarnya
    Namun menurut saya lebih baik istri saya memakai ini untuk konversi atau pemisahan PDF daripada mengunggahnya ke sembarang situs web atau aplikasi. Toh situs-situs seperti itu sering kali juga memakai tool command-line yang sama
    Istri saya juga tidak terlalu peduli yang mana, dan tampaknya ini cukup cocok untuk use case-nya

    • Saya penasaran dengan bagian tool Linux CLI yang menjadi dasarnya. Yang saya temukan adalah ini: https://pdfbox.apache.org/2.0/commandline.html
      PDFBox adalah aplikasi Java, jadi seharusnya berjalan lintas platform, bukan hanya di Linux. Kalau yang dimaksud sesuatu yang lain, saya ingin tahu
    • Lebih baik beli saja tool PDF berlisensi permanen seharga 70 dolar. Benar-benar sepadan. Kalau bisa, dapatkan juga versi exe portabelnya
  • Di README tertulis “Stirling PDF tidak memulai panggilan eksternal untuk tujuan pencatatan atau pelacakan”, jadi sepertinya kesimpulannya sudah jelas

    • Saya pembuatnya. Sepertinya ada sedikit kebingungan di dokumentasi. Ini tidak sepenuhnya dibuat dengan ChatGPT
      Awalnya tahun lalu saya memulainya sebagai tantangan 24 jam untuk membuat seluruh aplikasi dengan ChatGPT dalam batas waktu, sekadar menguji seperti apa ChatGPT 3.0
      Setelah saya unggah ke Reddit, ternyata permintaannya besar, jadi saya mengembangkannya menjadi aplikasi penuh, dan yang sepenuhnya memakai ChatGPT hanya 24 jam pertama. Sekarang sudah lebih dari 1 tahun berlalu
    • Saya penasaran apa maksud kalimat itu. Apakah itu dimasukkan agar menarik perhatian HN? Terlihat mirip dengan produk atau layanan yang sedikit saja terkait data lalu tiba-tiba menempelkan “oh ya, kami juga melakukan AI” di suatu tempat di landing page
      Toh orang tidak menulis “Dikembangkan menggunakan IntelliSense” di README
    • Bagi saya artinya dua hal. Jangan diekspos ke internet publik, dan jangan masukkan input yang tidak tepercaya
      Jadi menurut standar saya, kegunaannya berkurang besar
    • Mengejutkan. Kita benar-benar hidup di zaman yang luar biasa
    • Jadi apakah ini bisa dipercaya?
  • Saya berharap fitur ini diintegrasikan ke Paperless. Kadang dokumen yang dipindai masuk dalam keadaan terbalik sehingga harus dipindai ulang
    Akan bagus kalau bisa menekan tombol rotasi, mengubah urutan jika perlu, lalu memprosesnya lagi

  • Pembaruan Firefox yang relatif baru menambahkan editor PDF
    Sepertinya banyak orang masih punya persepsi tentang Firefox berdasarkan beberapa versi lalu. Sebagai orang yang menggunakannya setiap hari sepanjang sejarahnya, menurut saya Firefox sudah berkembang cukup banyak selama bertahun-tahun
    Kalau sudah lama tidak mencobanya, layak dicoba lagi

  • Setelah membaca kalimat di README, “Stirling PDF does not initiate any outbound calls for record-keeping or tracking purposes”, saya penasaran apakah ada cara bagi calon pengguna untuk memverifikasinya terlebih dahulu selain mengaudit kode
    Khususnya, meskipun sebagian request web diperlukan agar aplikasi berjalan, bagaimana aplikasi berbasis web dapat mendukung klaim seperti ini jika, misalnya, request hanya boleh dilakukan ke daftar URL terbatas yang tertulis dalam manifest seperti Content-Security-Policy?
    Ini masalah yang cukup konkret saat men-deploy aplikasi yang mengharuskan pengguna “mengunggah” konten sensitif

    • Jika di-host sendiri, Little Snitch bisa membantu. Jika tidak di-host sendiri, tidak ada jaminan, dan sikap dasarnya adalah “asumsikan yang terburuk”
      https://www.obdev.at/products/littlesnitch/index.html
      Little Snitch adalah tool yang berfokus pada macOS. Mungkin ada yang lain, tapi saya tidak terlalu tahu. Rasanya hal seperti ini seharusnya menjadi fitur di level sistem operasi
    • Jika di-host sendiri di Kubernetes, Anda bisa menetapkan kebijakan jaringan deny-all egress untuk deployment atau pod tersebut. Dengan begitu, semua panggilan jaringan eksternal akan diblokir
    • Agar aplikasi web berjalan, tidak perlu melakukan request web eksternal. Pengguna yang berinteraksi dengan weblah yang memulai request
      Anda bisa menyediakan akses aplikasi melalui proxy HTTP dan memfilter request eksternal dari aplikasi web, atau bahkan tidak mengonfigurasi routing jaringan pada server yang meng-host aplikasi itu sama sekali. Maka yang tersisa hanya request yang dimulai JavaScript di dalam halaman yang dirender
    • Pada akhirnya, ini adalah masalah yang ada di hampir semua paket, library, dan sistem yang kita gunakan
      Open source berjalan di atas tingkat kepercayaan yang cukup besar, dan kita semua ikut ambil bagian dalam struktur itu
    • Letakkan sniffer atau tool capture jaringan seperti Wireshark di tengah. Selain itu, akses jaringan aplikasi juga bisa sepenuhnya dibatasi hanya ke jaringan rumah lokal
  • Saya sedang mengerjakan produk yang bisa dijelaskan dengan cara serupa
    CxReports: tool laporan PDF berbasis web yang di-host sendiri
    https://www.cx-reports.com

  • Saat melihat proyek ini beberapa bulan lalu, saya langsung menyukainya. Saya menginstalnya dan mulai benar-benar menggunakannya, tetapi banyak bug, dan beberapa tool sampai tidak bisa digunakan
    Semoga sekarang sudah lebih baik

  • Saya pernah mencoba ini untuk meningkatkan kontras file PDF yang berisi formulir teks hasil pemindaian. Hasil scan-nya nyaris tidak terlihat, jadi pada dasarnya yang dibutuhkan adalah membuat bagian gelap menjadi lebih gelap, dan kalau bisa sedikit lebih tebal agar lebih mudah dibaca
    Pekerjaan yang terlihat sepele seperti itu pun tidak bisa dibantu dengan baik oleh tool ini, dan peningkatannya sangat kecil. Saya mencobanya berulang kali, tetapi setelah percobaan kedua tidak ada lagi perbedaan visual, sementara ukuran file terus berubah

    • Itu sebenarnya bukan masalah PDF itu sendiri. Dalam kasus tersebut, PDF hanyalah wrapper tipis yang membungkus gambar raster
      Ekstrak gambarnya, lalu tingkatkan kontrasnya dengan GIMP atau ImageMagick dan buat PDF baru. Jika filenya banyak, ini juga bisa diproses dengan skrip
  • Saya sedang melihat daftarnya, dan mencari apakah ada API untuk mengekstrak teks dari PDF
    Atau saya juga penasaran apakah bisa diambil dalam bentuk vektor atau embedding