Pengembang Ciptakan Sistem Screenshot Otomatis yang Update Sendiri
Judul asli: Self-updating screenshots
Mengapa Ini Penting
Solusi inovatif untuk masalah umum dalam dokumentasi software development
James Adam dari Jelly mengembangkan sistem screenshot otomatis untuk dokumentasi web app. Sistem ini menangkap screenshot dari aplikasi yang sedang berjalan dan memperbarui diri saat UI berubah menggunakan headless Chrome.
Sistem ini bekerja dengan menambahkan komentar HTML khusus dalam file Markdown yang berisi instruksi screenshot. Contoh: "<!-- SCREENSHOT: acme-tools/inbox | element | selector=#inbox-brand-new-section -->". Rake task kemudian memproses instruksi tersebut menggunakan headless Chrome via Capybara dan Cuprite. Sistem mendukung tiga mode: element (screenshot elemen DOM spesifik), full_page (tangkap seluruh halaman), dan viewport (hanya area yang terlihat). Fitur tambahan termasuk opsi 'click' untuk menangkap state di balik tombol atau popover, 'wait' untuk animasi, 'crop' untuk area tertentu, dan 'hide' untuk menyembunyikan elemen tidak diinginkan. Seluruh pipeline dijalankan dengan perintah 'rails manual:build' yang secara otomatis menangkap semua screenshot dan membangun halaman bantuan.