CODEPLAY 32 SMPN 32 DEPOK
RELEASE CANDIDATE BUILD 20260921.19

Perjalanan CodePlay 32,
dari ide menjadi arena belajar.

Halaman ini mencatat perubahan besar, teknologi, dan kesiapan CodePlay 32 secara transparan. Setiap versi mewakili langkah baru untuk membuat belajar coding lebih ramah bagi siswa SMP.

RILIS SAAT INI

v2.0 RC16

2.0.0-rc.16

Codename
Public Pilot
Tanggal build
21 September 2026
Generasi
Laravel
Status
Release Candidate
YANG BARU

Perubahan di v2.0 RC16

Setiap pengembangan yang sudah terpasang dicatat di sini agar siswa dan pembina dapat mengikuti perubahan CodePlay 32.

Pilot publik

Domain permanen lulus pemeriksaan nyata

Beranda, halaman versi, dan health endpoint pada codeplay32.web.id merespons HTTPS 200 melalui named tunnel production.

Email production

SMTP nyata terkonfigurasi dan teruji

Secret pengirim verifikasi hanya tersimpan pada environment shared. Pengiriman langsung dari Laravel ke alamat uji berhasil tanpa failed job atau error aplikasi.

Gateway publik

Named tunnel menggantikan URL uji sementara

Hostname codeplay32.web.id diarahkan ke tunnel khusus production dan connector akan aktif kembali otomatis setelah reboot Ubuntu.

Isolasi connector

Cloudflared berjalan tanpa hak root

Credential tunnel disimpan di /etc/cloudflared dengan akses terbatas, sementara service hanya memiliki kebutuhan jaringan dasar untuk menjangkau origin lokal dan edge Cloudflare.

Runtime Ubuntu

Nginx dan PHP-FPM memperoleh permission yang tepat

Release mewarisi grup www-data melalui setgid, shared storage tetap dapat ditulis, dan aktivasi host berhenti jika konfigurasi Nginx atau smoke test domain gagal.

Deployment

Pergantian rilis berlangsung atomik

Kode, dependency, aset, migration, dan cache disiapkan di release directory baru. Symlink current baru berpindah setelah seluruh tahap kritis lulus.

Pemulihan deployment

Rilis lama tidak ditinggalkan dalam maintenance

Jika build atau migration gagal, target current tidak berubah dan aplikasi aktif sebelumnya otomatis dikembalikan dari maintenance mode.

Server Ubuntu

Bootstrap aman dan dapat diulang

Node.js, npm, direktori rilis, shared storage, backup, dan log disiapkan konsisten tanpa mengubah secret yang sudah ada saat skrip dijalankan ulang.

Database production

Akun aplikasi memiliki ruang lingkup terbatas

MariaDB menggunakan database codeplay32 dan akun codeplay32_app yang hanya memperoleh hak pada database aplikasi. Password acak disimpan dengan izin ketat dan tidak dicetak ke terminal.

Domain permanen

Konfigurasi aktif pada codeplay32.web.id

APP_URL, host validation, Nginx, cookie aman, tautan email, DNS, dan named Cloudflare Tunnel memakai domain publik yang sama serta telah lulus smoke test HTTPS.

Identitas visual

Monogram pilihan 9 resmi dipakai

Bentuk C dan aksen progres neon aqua dipertahankan dari lembar eksplorasi v3 tanpa diganti menjadi ikon coding generik.

Mode terang dan gelap

Logo tetap kontras di dua tema

Segmen putih digunakan pada latar gelap, sedangkan varian navy digunakan pada latar terang. Bentuk dan proporsi monogram tetap sama.

Ikon perangkat

Favicon dan app icon satu identitas

Browser, shortcut perangkat, dan manifest web kini memakai monogram yang sama dalam wadah navy agar tetap terbaca pada ukuran kecil.

Konsistensi antarmuka

Navbar, landing, dan footer selaras

Ikon placeholder sebelumnya diganti dengan komponen brand reusable sambil mempertahankan wordmark CODEPLAY 32 agar nama produk tetap langsung terbaca.

Kapasitas tulis

Skenario kelas lulus tanpa error

Dua puluh pengguna virtual menyelesaikan 260 request login, draft, progres, feed, forum, komentar, vote, dan logout dari cold start dengan concurrency 10 serta p95 236,22 ms.

Transaksi progres

Penyelesaian stage tahan akses serentak

Penguncian gap yang tidak diperlukan dihapus setelah row pengguna terkunci, sehingga insert progres siswa berbeda tidak saling deadlock. Retry transaksi tetap dipertahankan.

Rate limit

Batas tiap fitur tidak saling memakan

Draft, completion, posting, dukungan, komentar, forum, vote, dan tindakan akun memakai bucket terpisah per pengguna. Satu jaringan sekolah tidak lagi dianggap sebagai satu siswa.

Rendering production

Blade aman saat cold start

View production diprecompile tanpa pemeriksaan timestamp saat request. Kompilasi pertama juga memakai lock lintas-thread agar cold start Apache Windows tidak memicu race rename cache.

Server mandiri

Paket Ubuntu siap ditindaklanjuti

Preflight PHP 8.5, template Nginx, environment production, queue worker, dan scheduler systemd telah disiapkan tanpa menurunkan kebutuhan runtime.

Katalog course

Ringkasan progres kembali terbaca

Jumlah stage selesai dan stage via asesmen kini dirender dengan blok tampilan yang aman tanpa membocorkan directive Blade.

Fast-track

Penempatan membutuhkan dua bukti

Setiap modul hanya dapat dilewati setelah quiz acak minimal 80% dan seluruh target praktik stage penutup terpenuhi.

Integritas progres

Dilewati tidak disamakan dengan selesai

Hasil penempatan disimpan terpisah dari progres stage dan quiz reguler. Tidak ada XP, badge, atau kode praktik yang disimpan.

Jalur adaptif

Modul berikutnya terbuka secara aman

Asesmen dilakukan berurutan. Stage yang dilewati tetap dapat dipelajari opsional dan baru memberi XP setelah benar-benar diselesaikan.

Feedback HTML

Stage embed memberi diagnosis tepat

Loading lazy dan sandbox diperiksa secara terpisah pada iframe yang sama, sehingga siswa mengetahui atribut mana yang masih harus diperbaiki.

Bahasa pembelajaran

Instruksi debugging lebih konkret

Tujuan Stage 26 sekarang meminta siswa mencari baris rusak pertama, memperbaikinya, lalu memeriksa ulang hasil.

Kurikulum CSS

Tiga kemampuan inti ditambahkan

Course CSS kini memiliki 31 stage dengan unit positioning dan z-index, pola nth-child, serta dekorasi before dan after. Sticky tersedia sebagai eksplorasi tanpa reward rutin.

Kontinuitas progres

Nomor stage bergeser tanpa kehilangan konteks

Migrasi transaksional memindahkan progres, draft, komentar, dan baseline stage lanjutan bersama kontennya. Siswa tetap kembali ke materi yang sama.

Operasi Windows

Task terjadwal benar-benar tanpa jendela

Artisan memperoleh dimensi terminal tetap khusus proses CLI Windows. Symfony tidak lagi memanggil stty atau mode CON ketika health monitor berjalan melalui php-win.exe.

Content Security Policy

Script hanya berjalan dengan nonce

Script inline tepercaya dan CSS dinamis CodeMirror memperoleh nonce per request. Sumber script, style, gambar, koneksi, frame, media, worker, dan form dibatasi secara eksplisit.

Aset statis

Header keamanan juga berlaku di Apache

JavaScript, CSS, robots.txt, dan file publik lain kini menerima nosniff, referrer policy, serta cross-origin resource policy walaupun tidak melewati middleware Laravel.

Ketahanan environment

Konfigurasi aman pada request serentak

Laravel tidak lagi memakai penyimpanan environment process-wide pada Apache Windows multi-thread. Nilai konfigurasi tetap terisolasi pada setiap request dan production menggunakan config cache.

Fail closed

Tidak memakai konfigurasi contoh

Front controller menghentikan request dengan 503 apabila config cache dan file environment sama-sama tidak tersedia, sehingga aplikasi tidak diam-diam mencoba database default.

Pemindaian keamanan

ZAP publik dan autentik

Permukaan publik dan area pengguna diuji dengan OWASP ZAP memakai akun tester terisolasi, backup tervalidasi, serta pembersihan artefak setelah scan.

Editor mobile

Satu editor penuh dengan skala fleksibel

HTML dan CSS tidak lagi tampil berdampingan: hanya file pada tab aktif yang dirender selebar area editor. Course CSS membuka style.css lebih dulu, menyediakan skala kode 100%, 85%, 70%, atau 50%, dan tetap memiliki mode layar penuh.

Baseline

Rasio berhasil dan gagal

Pemeriksaan pertama yang berhasil kini ikut dihitung sehingga tingkat kesulitan tidak lagi dinilai hanya dari jumlah kegagalan. Kode siswa tetap tidak disimpan.

Guardrail pedagogi

Microcheck menunggu sampel layak

Stage baru dapat direkomendasikan setelah sedikitnya 10 pemeriksaan dari 3 siswa dan rasio gagal minimal 40%. Data internal saat rilis masih kosong.

Kapasitas

Jalur baca lulus uji beban

Sebanyak 800 request dengan 25 pengguna serentak selesai tanpa kegagalan; p95 terburuk 255 ms. Login massal dan operasi tulis belum termasuk.

Monitoring

Pemeriksaan otomatis lima menit

Database, storage, disk, queue, backup, monitor, dan runtime diperiksa melalui task tersembunyi tanpa membuka jendela terminal.

Backup

Arsip memiliki checksum

Backup baru menghasilkan SHA-256 pendamping dan diverifikasi dengan membaca isi gzip serta keberadaan skema SQL.

Pemulihan

Recovery drill terisolasi

Backup final berhasil memulihkan 28 tabel ke database sementara lalu membersihkannya otomatis tanpa mengubah database aktif.

CATATAN PERJALANAN

Riwayat perkembangan

Nomor versi awal direkonstruksi dari tonggak pengembangan sebelum sistem versioning resmi diterapkan.

  1. v0.1

    Fondasi pertama

    Prototipe login, dashboard, dan jalur belajar dasar mulai dibentuk.

  2. v0.2

    Belajar interaktif

    Stage, editor kode, pemeriksaan misi, dan live preview hadir sebagai inti pengalaman belajar.

  3. v0.3

    Motivasi belajar

    XP, peringkat, badge, level, dan streak ditambahkan untuk membuat progres lebih terasa.

  4. v0.4

    Identitas dan komunitas

    Profil, foto, tema, postingan, feed, komentar, forum, vote, dan notifikasi mulai terhubung.

  5. v0.6

    Konten yang lebih matang

    Cheatsheets, course terpisah, serta materi dan misi HTML yang lebih komprehensif dikembangkan.

  6. v1.0

    Generasi PHP native

    Seluruh fitur utama versi awal menyatu dan menjadi dasar untuk modernisasi berikutnya.

  7. v2.0 Alpha

    Migrasi Laravel

    Arsitektur, database, autentikasi, keamanan, dan antarmuka dipindahkan secara bertahap ke Laravel.

  8. v2.0.0-beta.1

    Public Preview

    Versi uji publik dibuka melalui HTTPS dengan SMTP nyata, database terisolasi, dan alur kritis yang terverifikasi.

  9. v2.0.0-beta.2

    Community Polish

    Interaksi feed diperdalam dengan komentar posting, notifikasi, moderasi, serta perbaikan responsif pada modal, menu akun, dan contoh kode.

  10. v2.0.0-beta.3

    Account Recovery

    Pengguna dapat memulihkan akun melalui tautan reset password yang dikirim ke email terdaftar dengan token sekali pakai.

  11. v2.0.0-beta.4

    HTML Mastery

    Course HTML diperluas menjadi 28 stage dengan validator ketat, variasi latihan, rubrik proyek, peta penguasaan, dan editor mobile yang lebih nyaman.

  12. v2.0.0-beta.5

    Module Checkpoints

    Enam quiz modul ditambahkan dengan bank 10 soal, paket acak lima soal, syarat lulus 80%, pembahasan jawaban, dan penguncian progres di server.

  13. v2.0.0-beta.6

    Timed Quiz Rewards

    Quiz kini memiliki batas lima menit yang diverifikasi server, hadiah XP sekali per modul, timeout otomatis, dan pilihan jawaban yang lebih seimbang.

  14. v2.0.0-beta.7

    Proof of Skill

    Enam badge kompetensi resmi diperkenalkan dengan bukti quiz, challenge, proyek, kualitas kode, kontribusi komunitas, dan verifikasi pembina.

  15. v2.0.0-beta.8

    Course Engine

    Mesin belajar digeneralisasi agar setiap course dapat memiliki modul, quiz, validator, materi, editor, dan peta penguasaannya sendiri tanpa bergantung pada HTML.

  16. v2.0.0-beta.9

    CSS Foundations

    Course CSS dibuka dengan 15 stage dalam tiga modul, editor dua berkas, live preview, validator CSS, tiga quiz, dan cheatsheet visual yang ramah pemula.

  17. v2.0.0-rc.1

    CSS Complete

    Course CSS dituntaskan menjadi 28 stage dalam enam modul dengan Grid, layout fluid, motion aksesibel, debugging, audit, capstone, enam quiz, dan peta mastery.

  18. v2.0.0-rc.2

    Learning Editor

    Editor latihan ditingkatkan ke CodeMirror 6 dengan pewarnaan sintaks, nomor baris, pasangan tag, lint ramah pemula, dukungan mobile, dan fallback textarea tanpa mengubah validator resmi.

  19. v2.0.0-rc.3

    Learning Feedback

    Feedback misi dibuat menetap dan bertingkat, Stage 2 dirancang ulang dengan diagram nesting serta identifier bebas, dan baseline kesulitan mulai dikumpulkan tanpa menyimpan kode siswa.

  20. v2.0.0-rc.4

    Operational Readiness

    Baseline memakai rasio berhasil-gagal dan ambang sampel, jalur baca melewati uji beban, monitoring lima menit aktif, serta backup ber-checksum lulus recovery drill terisolasi.

  21. v2.0.0-rc.5

    Security Resilience

    Bootstrap environment dibuat aman untuk Apache Windows multi-thread, aplikasi gagal tertutup ketika konfigurasi hilang, jalur PHP-CGI diblokir pada virtual host, dan pengujian ZAP autentik ditambahkan.

  22. v2.0.0-rc.6

    Web Security Hardening

    CSP berbasis nonce diterapkan pada script dan editor, sumber konten dibatasi per jenis, header aset statis diperkuat, dan pemindaian DOM-XSS berbasis Chrome diselesaikan.

  23. v2.0.0-rc.7

    Silent Operations

    Perintah Artisan terjadwal di Windows tidak lagi menjalankan deteksi terminal melalui CMD, sehingga monitoring, backup, dan pembersihan berjalan tanpa jendela konsol berkedip.

  24. v2.0.0-rc.8

    Curriculum Clarity

    Diagnosis misi HTML dibuat lebih spesifik dan CSS diperdalam menjadi 31 stage dengan positioning, selector struktural, serta pseudo-element tanpa merusak progres yang sudah tersimpan.

  25. v2.0.0-rc.9

    Skill Placement

    Fast-track per modul menguji lima soal dan praktik nyata, mencatat pengecualian secara terpisah, serta membuka jalur berikutnya tanpa XP, badge, atau progres stage palsu.

  26. v2.0.0-rc.10

    Progress Polish

    Ringkasan progres pada katalog course dirapikan agar kondisi asesmen dirender sebagai informasi pengguna, bukan terlihat sebagai sintaks template.

  27. v2.0.0-rc.11

    Concurrent Classroom

    Jalur login dan operasi tulis diuji dengan sesi nyata, transaksi progres diperkuat, throttle dipisahkan per fitur, dan rendering production diamankan untuk akses kelas serentak.

  28. v2.0.0-rc.12

    Signature Identity

    Monogram pilihan 9 menjadi identitas utama CodePlay 32 dengan aset transparan, varian terang-gelap, favicon, app icon, serta penerapan konsisten di navbar, landing, dan footer.

  29. v2.0.0-rc.13

    Ubuntu Launchpad

    Fondasi server Ubuntu untuk domain codeplay32.web.id disiapkan dengan bootstrap idempotent, akun MariaDB terbatas, secret database yang tidak dicetak, environment shared, dan struktur rilis yang dapat di-rollback.

  30. v2.0.0-rc.14

    Ubuntu First Flight

    Deployment Ubuntu memakai release directory terisolasi, build production, migration terkontrol, maintenance recovery, dan perpindahan symlink atomik agar pembaruan dapat diuji sebelum menjadi rilis aktif.

  31. v2.0.0-rc.15

    Permanent Gateway

    Named Cloudflare Tunnel menghubungkan codeplay32.web.id ke origin Ubuntu melalui connector non-root, credential terbatas, service otomatis, dan Host origin tervalidasi.

  32. v2.0.0-rc.16

    Public Pilot

    Domain permanen lulus pemeriksaan HTTPS publik, SMTP production berhasil mengirim email nyata, serta queue, scheduler, Nginx, PHP-FPM, tunnel, dan health endpoint terverifikasi aktif.

MESIN DI BALIKNYA

Fondasi generasi kedua

BACKEND

Laravel 13

Fondasi aplikasi dan keamanan

RUNTIME

PHP 8.5

Mesin aplikasi modern

DATABASE

MariaDB 12

Data belajar dan komunitas

INTERFACE

Tailwind 4 + CodeMirror 6

Tampilan responsif dan editor kode interaktif

MENUJU STABLE

Kesiapan v2.0.0

1 langkah lagi
  • Domain publik permanen
  • Materi course HTML diperdalam dan memiliki assessment kuat
  • Materi course selain HTML diperdalam
  • Baseline cukup untuk menentukan microcheck dan bantuan stage
  • Uji beban jalur baca dengan banyak pengguna
  • Uji beban login dan operasi tulis
  • Monitoring, backup, dan recovery drill internal
  • Registrasi, login, foto, CSRF, dan verifikasi email
  • Session aman, host validation, dan database khusus
DIBUAT BERSAMA

Ekskul Digital Creative — SMP Negeri 32 Depok

CodePlay 32 tumbuh sebagai ruang untuk belajar, mencoba, salah, memperbaiki, lalu berani membagikan karya.

Mulai belajar →