Blok GitHub: Kode JavaScript dalam file Markdown.

Nov 27 2022
Atau aplikasi kecil yang Anda terapkan ke GitHub.
Salah satu pengumuman yang lebih tenang di acara GitHub Universe baru-baru ini adalah Blok GitHub, yang disajikan sebagai eksperimen oleh Kyle Daigle, VP Strategy, meskipun proyek tersebut cukup maju sehingga pengembang dapat mendaftar ke daftar tunggu. Blok memungkinkan pengembang untuk menyertakan JavaScript dalam file repositori sehingga menjadi dokumen langsung, mampu melakukan hal-hal seperti memvisualisasikan konten atau menyajikan analitik yang berkaitan dengan repositori.

Salah satu pengumuman yang lebih tenang di acara GitHub Universe baru-baru ini adalah Blok GitHub, yang disajikan sebagai eksperimen oleh Kyle Daigle, VP Strategy, meskipun proyek tersebut cukup maju sehingga pengembang dapat mendaftar ke daftar tunggu.

Blok memungkinkan pengembang untuk menyertakan JavaScript dalam file repositori sehingga menjadi dokumen langsung, mampu melakukan hal-hal seperti memvisualisasikan konten atau menyajikan analitik yang berkaitan dengan repositori. Daigle menggambarkannya sebagai "cara untuk terlibat dengan repo Anda secara langsung dan interaktif."

Kyle Daigle, VP Strategy, mempersembahkan Blok di Semesta

Idenya disajikan terutama untuk dokumentasi yang lebih kaya. “Blok adalah komponen yang menyesuaikan cara Anda berinteraksi dengan konten Anda,” kata Daigle di Universe, menambahkan bahwa blok “bisa sekuat kotak pasir kode langsung untuk editor WYSIWYG” — atau dengan kata lain, cara menjalankan dan mendemonstrasikan apa yang dilakukan kode dalam repositori, di dalam repositori itu sendiri. Anda dapat menganggap Blocks, kata Daigle, sebagai "aplikasi kecil yang Anda terapkan dengan mendorong ke GitHub".

Dokumentasi untuk repositori GitHub paling sering diformat dengan Markdown, cara sederhana untuk menambahkan markup yang dimaksudkan agar mudah dibuat dan dibaca sebagai teks biasa, sekaligus menyediakan pemformatan penting seperti judul, daftar, gambar, dan contoh kode.

Markdown memiliki sejumlah varian dan versi GitHub, yang disebut GFM (GitHub Flavoured Markdown) ditentukan di sini , superset dari Markdown.

Merender font dan warna di Blok GitHub

Gagasan menambahkan JavaScript ke Markdown agak bertentangan dengan konsep Markdown, meski idenya bukanlah hal baru. Blok GitHub mengingatkan pada R Markdown yang memungkinkan pembuat kode menyematkan kode bahasa R dan widget Shiny, Shiny menjadi komponen yang menjalankan JavaScript, HTML, dan CSS.

Kasus penggunaan yang disajikan oleh Daigle termasuk merender font dan warna, menampilkan data JSON dalam tabel berformat, menampilkan analitik repositori seperti kontributor, statistik masalah, permintaan komitmen dan penarikan, menampilkan diagram, dan mendemonstrasikan fitur aplikasi secara dinamis. Fitur terakhir ini paling cocok untuk aplikasi yang dikodekan sendiri dalam JavaScript atau TypeScript, seperti yang sering terjadi. Kemungkinan lain adalah menghasilkan pencarian dan pengindeksan kode dari dalam dokumentasi.

GitHub sudah memiliki REST API, dan dalam arti tertentu, Blocks hanya menggabungkannya dengan gagasan untuk memungkinkan JavaScript dan HTML dirender dari GFM. Meskipun secara konseptual hal itu mengganggu anggapan bahwa repositori adalah untuk kode, dan bahwa kompilasi dan menjalankan kode dilakukan di tempat lain, karena dalam hal ini kode dijalankan langsung dari repositori.

Blok adalah fitur khusus GitHub dan jika pengembang mengandalkannya, akan lebih sulit untuk beralih ke repositori kode yang berbeda, aspek lain dari eksperimen yang mungkin terbukti bermanfaat bagi GitHub. Informasi lebih lanjut dan aplikasi daftar tunggu ada di sini .