Membangun Rule Engine yang Dapat Diaudit dengan Python
Bangun rule engine Python yang memisahkan aturan bisnis, mencatat keputusan, dan dapat diuji serta diaudit secara sistematis.
Bangun ekstensi browser berbasis JavaScript untuk mengelompokkan tab, menutup duplikat, dan menyimpan sesi kerja secara lokal.
Skill yang dibangun
Membuat dan memuat ekstensi Manifest V3 dengan struktur file yang tepat, lalu memeriksa error melalui halaman Extensions dan DevTools.
Mengambil, menampilkan, mengelompokkan, dan menutup tab menggunakan API browser dengan permission yang sesuai.
Menghubungkan popup, service worker, dan komponen ekstensi melalui message passing tanpa mengandalkan state global yang tidak tersedia lintas konteks.
Menyimpan, membaca, memperbarui, dan menghapus sesi tab menggunakan penyimpanan lokal, termasuk menangani data kosong, URL terbatas, dan perubahan state.
Pemula yang telah memahami dasar HTML, CSS, dan JavaScript seperti variabel, fungsi, array, event, serta manipulasi DOM. Kursus ini ditujukan bagi peserta yang ingin beralih dari latihan halaman web sederhana ke pembuatan alat produktivitas nyata di browser, tetapi belum memahami manifest ekstensi, permission, komunikasi antarkomponen, dan penyimpanan data lokal.
Project outcomes
Peserta membangun ekstensi browser Manifest V3 dengan antarmuka popup untuk melihat tab yang sedang terbuka, mengelompokkan tab berdasarkan domain, mendeteksi serta menutup tab duplikat, lalu menyimpan daftar sesi agar dapat dipulihkan kemudian. Proyek mencakup validasi input, penanganan kegagalan permission atau URL khusus browser, dan pengujian melalui beberapa skenario tab yang berbeda.
Tab yang terlalu banyak membuat konteks kerja sulit dipertahankan: informasi tersebar, tab duplikat menumpuk, dan sesi riset mudah hilang ketika browser ditutup. Kursus ini mengajak kita menyelesaikan masalah tersebut melalui ekstensi browser sederhana berbasis JavaScript, bukan sekadar halaman web yang berjalan di satu tab.
Peserta mempelajari peran manifest ekstensi Manifest V3, permission, popup, service worker, serta content script. Setiap komponen ditempatkan berdasarkan batas aksesnya, kemudian dihubungkan dengan message passing dan state yang dapat diamati. Kita juga membahas alasan di balik pemilihan API, batasan akses pada halaman tertentu, serta cara membaca error ketika ekstensi tidak dapat memuat, mengakses tab, atau menyimpan data.
Di akhir kursus, peserta menghasilkan alat produktivitas yang dapat menampilkan tab terbuka, menutup tab duplikat dengan aturan yang jelas, mengelompokkan tab, dan menyimpan sesi ke penyimpanan lokal browser. Validasi dilakukan melalui skenario penggunaan dan pemeriksaan perilaku, sehingga hasilnya tidak berhenti pada kode yang sekadar berhasil dipasang.
Bangun rule engine Python yang memisahkan aturan bisnis, mencatat keputusan, dan dapat diuji serta diaudit secara sistematis.
Bangun aplikasi flashcard berbasis Python dengan penyimpanan data dan algoritma pengulangan berjarak untuk belajar lebih teratur.
Bangun pipeline yang menandatangani, menghasilkan, dan memverifikasi provenance artefak dengan Sigstore dan in-toto.
Bangun simulator CPU dengan Python untuk membandingkan FCFS, SJF, dan Round Robin melalui data, perhitungan, dan validasi hasil.