Langsung ke konten
AFM Studio
  • Halaman

    AFM Studio
  • Karya
  • Lab
  • Tentang
  • CV
  • Kontak
  • Proyek

    AksaraPerpustakaan pengetahuan Otorita IKN yang bisa dicari, dengan server memeriksa akses setiap pembaca di tiga tingkat
  • Daily TaqwaSistem presensi salat anti-manipulasi untuk ~2.000 pegawai OIKN di Masjid Negara IKN
  • Lantara v2Mesin perizinan Otorita IKN tempat administrator menambah jenis izin baru dari layar, tanpa developer
  • eKiosk IKNDua ruang kendali untuk Nusantara: konten kios dan pelacakan bus live dengan estimasi kedatangan yang menilai dirinya sendiri
  • E-Monev IKNPlatform pemantauan pembangunan Nusantara selama 23 tahun, melacak progres triwulan setiap unit terhadap 24 KPI
  • JDIH OIKNPortal dokumen hukum publik OIKN, dengan alur penerbitan terkendali dan ringkasan AI yang tidak pernah keluar dari server
  • Jejak PenanamanAplikasi absen acara penanaman pohon IKN yang membuktikan peserta hadir di lokasi lewat selfie ber-geofence
  • Dashboard SAKTIPipeline malam dan dashboard yang menggantikan unduhan anggaran manual di keenam satker OIKN
  • DoseRxKalkulator dosis untuk 127 obat yang membulatkan dosis ke tablet dan sirup yang dijual apotek Indonesia
  • CubiqPelatih speedcubing dengan timer setara kompetisi dan solver buatan sendiri untuk 8 puzzle utama
  • ScimotionPerpustakaan sains interaktif berisi 86 artikel, masing-masing dijelaskan bersama animasi yang bisa dikendalikan pembaca
  • WA Daily Scrum BotBot WhatsApp yang menagih laporan standup tim 14 orang dan menandai tugas yang macet berhari-hari

↑ ↓ untuk berpindah · Enter untuk membuka · Esc untuk menutup

Tanggal Merah

Perencana libur dan cuti yang menunjukkan apakah cuti bersama memotong jatah cuti 12 hari Anda

Tangkapan layar
sisa cuti kalau kantor memotong cuti bersama
12 → 4
libur nasional dan cuti bersama 2026, semuanya bersumber
25
rencana cuti, dicek terhadap semua kombinasi
Tepat
status kepegawaian, masing-masing dengan aturannya
3
Di halaman ini

Masalahnya

Pekerja kantoran di Indonesia merencanakan cuti tahunan berdasarkan hari libur yang ditetapkan setiap tahun lewat SKB tiga menteri. SKB itu mengatur dua jenis hari libur. Libur nasional gratis. Cuti bersama bisa memotong jatah cuti tahunan 12 hari, tetapi hanya untuk sebagian orang.

Untuk 2026 ada 8 hari cuti bersama. Pekerja swasta yang kantornya tutup dan memotong cuti bersama dari jatahnya hanya tersisa 4 hari cuti. Rekannya di kantor yang tetap buka masih punya 12 hari. Pemberitaan tentang aturan ini saling bertentangan, dan setidaknya satu media membaliknya sama sekali. Kebanyakan orang baru sadar di bulan November, saat mau memesan tiket liburan. Kalender libur lain menampilkan semua hari ini sebagai "libur" yang sama dan tidak pernah menyebut berapa biayanya bagi jatah cuti Anda.

Yang saya bangun

Status kepegawaian menentukan jawabannya

Saya menjadikan status kepegawaian sebagai masukan pertama: ASN, swasta dengan potongan, dan swasta tanpa potongan. Setiap cabang mengutip peraturan asalnya. Halaman depan menampilkan empat kartu status. Tiga menyisakan 12 hari, satu menyisakan 4. Di kalender, aplikasi menandai hari cuti bersama mana saja yang dipotong oleh pemberi kerja.

Hari libur diambil dari SKB, tidak dari rumus

Idulfitri, Nyepi, Waisak, dan Imlek semuanya bisa diperkirakan dari bulan atau kalender. Hari libur resminya tetap mengikuti SKB, dan SKB itu menyerahkan tanggal-tanggal Islam ke keputusan terpisah dari Kementerian Agama. Karena itu saya menyalin SKB setiap tahun dan tidak menghitung tanggal keagamaan apa pun. Tahun yang belum punya SKB mendapat penolakan yang jelas dan menyebut celahnya. Salah dengan yakin soal apakah seseorang libur adalah kegagalan yang paling penting dihindari di sini.

Setiap hari libur membawa sumbernya

Setiap hari libur mencatat tanggal, jenis, nomor SKB, dan tanggal penandatanganannya. Build gagal kalau ada hari libur tanpa kutipan, tanggal ganda, atau placeholder yang tertinggal. Saat sumber berbeda pendapat tentang aturan cuti bersama, halaman aturan menampilkan kedua tafsiran beserta sumbernya. Halaman itu juga menyebut apa akibatnya bagi jatah cuti Anda kalau tafsiran yang ditolak ternyata benar.

Perencana cuti mencari hari terbaik secara tepat

Satu hari kerja yang terjepit di antara hari libur dan akhir pekan bisa mengubah satu hari cuti menjadi libur empat hari. Mencari celah seperti ini di dua belas bulan dengan mata saja melelahkan dan mudah keliru. Perencana memilih hari terbaik sesuai jatah Anda, dan saya mengeceknya dengan cara lambat yang mencoba semua kombinasi. Pengecekan itu menemukan sebuah bug. Merencanakan libur tunggal terpanjang butuh metode yang berbeda dari merencanakan total hari libur terbanyak.

Kalender yang bisa diikuti orang yang belum pernah dengar aturannya

Setelah hitungannya benar, saya membangun ulang antarmukanya untuk pembaca yang tidak tahu aturan ini ada. Contoh dengan tanggal nyata muncul sebelum kontrol apa pun. Setiap kutipan diletakkan di kartu yang menerapkannya. Setiap bulan bisa dijelajahi dengan keyboard, dan halaman mengumumkan hasilnya saat berubah.

Hasilnya

Tanggal Merah sudah live dan terbuka untuk umum, dalam bahasa Indonesia dan Inggris, dan bisa dipakai offline setelah dimuat pertama kali. Tampilan tahunannya disusun seperti kalender dinding, dengan libur nasional berwarna merah dan cuti bersama berwarna kuning tua. Pilih satu hari cuti, dan dua blok libur menyatu menjadi satu batang. Aplikasi juga menunjukkan apa yang didapat dari setiap tambahan hari cuti dan hari libur mana yang jatuh di akhir pekan, untuk lima dan enam hari kerja. Cakupannya 2026: 17 hari libur nasional dan 8 hari cuti bersama, masing-masing dengan sumber. Situs ini menyatakan dirinya proyek pribadi, bukan nasihat hukum ketenagakerjaan, dan bahwa cuti bersama di sektor swasta mengikuti kebijakan perusahaan. Saya membangunnya pada 12 dan 13 Agustus 2026.

Di balik layarDetail teknis untuk engineer
  • Tidak ada objek Date di mesin. Hari berupa bilangan bulat, posisi dalam pekan dihitung dengan aritmetika, dan tahun selalu menjadi argumen eksplisit. UI mengonversinya di batas.
  • Data SKB ada di data/skb/. pnpm rules:validate berjalan paling awal dan sendirian di CI, sebelum typecheck, lint, tes, dan build. data/skb/2026.json bertanda perluVerifikasi, dengan nomor SKB dicatat sebagai BELUM DIVERIFIKASI dan langkah pengecekannya ada di UPDATING.md.
  • data/contradictions/ menyimpan tafsiran yang bersaing tentang aturan cuti bersama, nilai yang dipakai aplikasi, dan alasannya.
  • Optimizer menelusuri celah di antara blok libur tetap, menghitung biaya tiap celah dalam hari kerja, lalu memilih sesuai jatah dengan DP. lib/optimise/brute.ts, oracle dua puluh baris yang tidak pernah diimpor di luar tes, di-commit lebih dulu. Tujuan libur terpanjang tidak bisa memakai DP dengan max (angkanya benar, rencananya salah), jadi memakai pemindaian berurutan dengan oracle sendiri.
  • "1 hari → 4 hari libur" mengukur kesinambungan. Hari yang didapat per hari cuti selalu 1,0; ada satu commit khusus untuk membetulkan kalimat itu.
  • Kurva marginal menjalankan ulang optimizer di setiap jatah. Kurvanya tidak monoton: jembatan dua hari tidak terjangkau dengan jatah satu hari, jadi hari kedua bisa lebih berharga dari hari pertama. Digambar manual dengan SVG.
  • Sebuah tes memastikan tanda potongan per hari berjumlah sama dengan total di ledger untuk setiap tahun, pola kerja, dan status.
  • Kuning tua hanya 2,48:1 di atas latar, jadi ekspor PNG memakai varian yang aman untuk teks. PNG digambar langsung di canvas tanpa rasterizer DOM. Ada ekspor ICS dan seluruh state tersimpan di hash URL.
  • Zod dipindah ke devDependencies karena validasi hanya terjadi saat build. Tiga dependensi runtime, tanpa library tanggal, kalender, atau hari libur.
  • Sekitar 9.150 baris, 134 tes di 16 berkas, 70 commit (14 aksesibilitas, 13 desain, 7 pedagogi).

Tangkapan layar

Beranda
Kalender
Rencana
Aturan dan Sitasi

Sedang merekrut, atau membangun hal serupa?

Saya terbuka untuk posisi full-time dan proyek freelance tertentu.