Explore. Learn. Build. Innovate.
Platform pembelajaran teknologi terdepan. Satu tempat berisi peta teknologi, roadmap belajar, tutorial, proyek praktik, tools, berita, dan AI mentor — dengan isi yang diperbarui secara otomatis.
Sasaran pemakai: pemilik sendiri, mahasiswa, engineer, sampai perusahaan yang butuh onboarding teknologi baru.
Situs publik, dibuka siapa pun: web techverse-x-web.vercel.app · API techverse-x-api.vercel.app · PostgreSQL di Neon. Gratis dan tanpa kartu (ADR-019, ADR-026); host API-nya Vercel kontainer, bukan Koyeb yang tak lagi gratis untuk akun baru (ADR-025).
Terukur 2026-10-06 pada alamat produksi: beranda menampilkan 14 bidang, /cari?q=quantum menemukan bidang Quantum Computing, permukaan tulis API tertutup (POST → 405), dan nol topik (totalItems: 0). Repo ini publik, dan CI serta citra GHCR hidup.
Ukuran resmi proyek — topik berstatus
tinjau(RENCANA-V1) — masih 0 dari 22. Bulan 1 (URL publik) dan Bulan 3 (pencarian, Knowledge Graph dasar) sudah ada di produksi; Bulan 2 (#42, tujuh topik AI Agents) belum bergerak karena tidak ada jalan membawa tulisan ke produksi.Jalannya sudah ada, dalam dua langkah yang sengaja terpisah:
- ADR-027 — pasang isi. Isi hidup sebagai berkas di
isi/, dibaca di PR, lalu dipasang ke produksi lewat workflow bergerbangisi.yml— paling jauh sampaidraf.- ADR-021 — naikkan ke
tinjau. Workflowtinjau.yml; nama pemeriksa diambil darigithub.actor, bukan diketik. Satu-satunya jalan ketinjau.Satu topik pilot (Model Context Protocol) sudah ditulis dari sumber resmi dan terbukti terpasang dari nol ke API sungguhan. Kedua workflow belum pernah dijalankan di produksi — itu pemicu pertama pemilik.
Pencarian teks penuh PostgreSQL (ADR-022): kotak cari di tiap halaman,
/cari?q=…, dan bidang ikut dicari. Knowledge Graph dasar (ADR-023): relasi antar-topik dijaga basis data dan tampil sebagai "Topik terhubung" — tapi produksi nol sisi, sebab produksi nol topik. Explore dilayani rute yang sudah ada dan/learnmenunggu pemicunya (ADR-024). Masih terbuka di milestone Bulan 3 — Explore, Learn & Pencarian: #54 (pencarian belum menjangkau isi halaman) dan pemicu Learn.
Yang sudah terbukti hidup: rantai Next.js → API .NET → PostgreSQL, dengan health check yang benar-benar menyentuh dependensinya. Diverifikasi tiga kali — di mesin pengembang (2026-09-03), dari dalam peti kemas produksi, tiga kontainer, volume basis data baru (2026-09-07), dan terhadap citra yang berlaku hari ini (2026-09-10, #48) yang sekalian menegaskan bentuk produksi itu tidak punya permukaan tulis: 14 bidang, nol topik.
| Sudah jalan | Belum ada |
|---|---|
| API .NET 10 + PostgreSQL 17 | Navigasi tujuh bagian — sengaja bertahap: satu bagian masuk menu hanya kalau halamannya berisi di produksi (ADR-024) |
| Irisan vertikal Technology (buat · ambil · cari) | Autentikasi |
| Migrasi EF Core, schema per bounded context | Kode AI apa pun |
Health check live/ready yang menguji dependensi |
Vector DB, Neo4j, event bus |
| Halaman web yang membaca API sungguhan | Pengambilan berita |
Pencarian teks penuh PostgreSQL — tsvector terhitung di technologies dan fields, halaman /cari, kotak cari di tiap halaman (ADR-022) |
Pencarian ke dalam isi halaman (#54) — hari ini yang tercari nama dan ringkasan |
| CI: 8 dari 9 gerbang blueprint menyala — Lint · Unit · Integrasi · SAST · Dependency Scan · Secret Scan · Container Scan · Build, plus penjaga "migrasi bisa dijalankan dari nol". Yang belum: Contract Test (belum ada kontrak antar-layanan) | Domain sendiri — situs tayang di subdomain vercel.app |
Citra produksi terbit ke GHCR tiap main bergerak — API, web, dan bundel migrasi EF |
Terraform, Kubernetes |
Kelima bagian template ADR-012 punya tabelnya sendiri — roadmap (langkah 0 = prasyarat), tools (m2m), mini project, resources, berikut halaman /teknologi/<slug> dan endpoint isinya (#41, PR #44) |
/learn — sengaja ditunda sampai #42 dan satu roadmap terisi di produksi (ADR-024) |
| Relasi antar-topik (Knowledge Graph dasar) — dibuat lewat endpoint tulis, tampil sebagai "Topik terhubung" di halaman topik, dijaga kunci asing di kedua ujung (ADR-023). Di produksi nol sisi, sebab nol topik | Jalan membuang langkah roadmap (jalan membuang relasi, sumber, proyek, dan alat sudah ada) — perlu keputusan penomoran ulang |
🐳 Redis dipakai di pengembangan saja. ADR-016 memutuskan ia tidak di-provision di V1 — ia harus membuktikan dirinya dulu dengan beban yang benar-benar ada. Kesiapan API sudah tahu cara hidup tanpanya, dan itu diuji (
tests/integration).
✅ Ke-22 keputusan Fase 0 dan Fase 1 sudah diambil pada 2026-09-04 dan tercatat di docs/KEPUTUSAN.md — baca itu lebih dulu. Kolom "Belum ada" di tabel atas sekarang berarti belum dibangun, bukan lagi belum diputuskan.
⚖️ Sisi hukum sudah tuntas untuk V1 (Issue #17, ditutup 8 Sep 2026). Keempat dokumen ketentuan layanan dibaca di peramban sungguhan, dan batas kutipan ditetapkan: arXiv boleh metadata penuh (CC0); sumber lain hanya judul, tautan, nama sumber, dan tanggal — nol kutipan. Rekamannya di AUDIT-KELAYAKAN.md.
⚠️ Kalau OpenAI dipakai, dua hal mengikat: §10 melarang memasang nama/logo mereka di situs tanpa izin tertulis ("Powered by OpenAI" melanggarnya), dan Sharing & Publication Policy menuntut manusia memikul tanggung jawab akhir atas isi terbit — yang berbenturan dengan tingkatdraf. Sejak 2026-09-28 bawaannya bukan OpenAI melainkan tier gratis tanpa kartu yang tidak melatih model dengan data kita — Groq untuk draf, Cloudflare Workers AI untuk Mentor dan embedding (ADR-026). Dan terukur: tanpa sumber yang dikurasi, model kecil menjawab salah dengan yakin, jadi tinjauan manusia tetap satu-satunya jalan ketinjau. Belum menyala: V1 tidak memanggil model sama sekali.
Butuh .NET SDK 10, Node 22+, dan Docker.
# Windows # Linux / WSL / macOS
.\run.ps1 up make up # Postgres + Redis
.\run.ps1 migrate make migrate # bikin tabelnya
.\run.ps1 api make api # http://localhost:5080
.\run.ps1 seed make seed # isi contoh (API dari baris di atas)
.\run.ps1 web make web # http://localhost:3000 - coba /cari?q=quantum.\run.ps1 tanpa argumen menampilkan seluruh perintah. Isi run.ps1 dan Makefile sengaja dijaga sama: yang satu untuk Windows, yang lain untuk Linux/WSL/macOS (CI tidak memanggil keduanya). Perintah seed di keduanya menjalankan satu berkas yang sama, database/seeds/seed.mjs — sampai 2026-09-17 masing-masing punya salinan sendiri, dan salinan untuk make sudah menyimpang.
Gerbang yang sama dengan CI, sebelum push:
.\run.ps1 verify make verify # build ketat, uji, tautan, lint, build web
.\run.ps1 gerbang-isi make gerbang-isi # isi dipasang 2x, uji-ganti, uji-media ke API sungguhan (butuh up)
.\run.ps1 ci make ci # verify + gerbang-isi + pindai rahasia + job citra (butuh Docker)ci menjalankan seluruh gerbang ci.yml di mesin pengembang sebelum push — tiga gerbang isi yang butuh API hidup (gerbang-isi: basis data sekali pakai, isi dipasang dua kali, uji-ganti, uji-media; berkasnya sama dengan yang dipanggil CI), gitleaks atas seluruh riwayat, tiga citra, gerbang ADR-020, tumpukan produksi dari volume kosong, pemindai halaman, Trivy. Diukur: hijau end-to-end dalam 161 detik (2026-09-28, sebelum gerbang isi ada). 🔴 Antara 2026-10-06 dan 2026-10-07 kata "seluruh" itu keliru: gerbang isi berbasis API hanya ada di ci.yml, dan PR #90 merah di CI karena salah satunya sementara verify lokal hijau. Kini satu berkas, database/isi/gerbang-isi.mjs, dipanggil CI dan kedua perintah lokal. Ia alat pengembang, bukan pengganti CI: CI proyek ini tetap GitHub Actions, dan infrastruktur proyek tidak bergantung pada mesin siapa pun (ADR-026). Gunanya menangkap merah sebelum push — termasuk di cabang yang belum punya PR, sebab ci.yml hanya memeriksa main dan PR. Sampai 2026-09-28 ia juga satu-satunya pemeriksa yang bisa jalan: kuota menit Actions yang dibagi semua repo privat di akun yang sama habis 10 September (#57); sejak repo publik, menit CI-nya tidak masuk kuota itu.
verify dan test menuntut up LALU migrate lebih dulu. Uji integrasi menulis baris ke PostgreSQL sungguhan — kesiapan yang diuji tanpa dependensi sungguhan tidak mengukur apa pun. Tanpa migrate, galatnya relation "technology.technologies" does not exist.
Satu aturan, dan sengaja tanpa hitungan ../:
Tautan relatif hanya boleh menunjuk berkas di dalam repo. Issue, PR, milestone, dan label ditulis URL penuh
https://github.com/xtheoputra/techverse-x/....
Sebabnya bisa diukur: halaman blob GitHub meresolusi tautan relatif dengan aturan URL biasa, jadi jumlah ../ yang benar bergantung pada kedalaman berkasnya dan berapa segmen yang dimakan nama ref-nya. Cabang di repo ini bernama fase-1/... — satu garis miring, dua segmen — sementara main satu. Tidak ada satu angka yang benar di keduanya: sebelum aturan ini dipasang, 71 dari 222 tautan issue rusak dibaca di main, dan 221 dari 222 dibaca di cabang. Gerbangnya .\run.ps1 tautan / make cek-tautan, ikut di verify dan di CI, dan kepala skripnya memuat ketiga pengukuran yang melahirkan aturan itu.
Komentar kode ikut diperiksa, sebab dokumentasi XML C# dan JSDoc di repo ini ditulis dalam Markdown — dan dua tautan issue di apps/web/src/lib/lingkungan.ts memang rusak. Keduanya juga memperlihatkan kenapa aturannya bukan sekadar "jangan keluar dari pohon repo": dari berkas empat tingkat dalam, empat ../ mendarat tepat di akar repo, jadi ia tidak keluar dari pohon — ia menunjuk berkas bernama issues/42 yang tidak ada.
Aturan teks pembaca ADR-024 — tidak ada "Bulan N", "menyusul", nomor ADR, perintah run.ps1, atau alamat internal di teks yang terlihat — hanya bisa diukur di halaman yang sudah tergambar, bukan di kode web. Tiga dari sembilan pelanggaran pertamanya datang dari data, yaitu ringkasan bidang yang disemai migrasi; pemindai kode tidak akan pernah melihatnya.
.\run.ps1 halaman make cek-halamanIa menuntut API hidup dan build produksi web (bukan next dev — aturannya memang membedakan keduanya), jadi ia sengaja di luar verify. Di CI ia tetap jalan: job citra menyalakan docker-compose.prod.yml lalu memanggil pemindai yang sama, di job yang memang sudah membangun ketiga citranya.
Selain memindai teks ia menelusuri dari /, membandingkan jumlah halaman /teknologi/* yang tercapai dengan semua yang dikenal API, menolak blok "Topik terhubung" yang tampil kosong (ADR-023), dan menuntut ringkasan setiap alat yang dikirim API benar-benar terlihat di halaman topiknya. Pembandingnya membaca API halaman demi halaman sampai hasNextPage salah — sampai 2026-09-28 ia hanya membaca halaman pertama, jadi diam-diam berhenti di 20 topik. Angkanya berbeda di dua bentuk, dan keduanya benar:
| Bentuk | Halaman | /teknologi/* |
|---|---|---|
| produksi (yang dijalankan CI) | 19 | 17 dari 17 — nol topik, jadi ketujuh belas bidang itulah seluruh isinya |
| pengembangan (6 topik contoh) | 25 | 23 dari 23 |
(Diukur ulang 2026-10-07 sesudah tiga bidang Deep Tech ditambahkan; sebelumnya 16 → 14 dari 14 dan 22 → 20 dari 20.)
seed memasukkan enam topik contoh, mengisi kelima bagian satu di antaranya, dan mencatat satu relasi antar-topik — sekadar supaya layar dan endpoint ada isinya. Cara isi sungguhan lahir sudah diputuskan di ADR-012 (kurasi → draf → tinjau oleh manusia), dimulai dari tujuh topik AI Agents di #42, dan jalan terakhirnya ke produksi ada di ADR-021. Tidak satu pun lewat seed.
| Berkas | Isi |
|---|---|
| KERANGKA.md | Dokumen utama. Empat bagian dikte pemilik — peta teknologi, produk, identitas & struktur aplikasi, dan Engineering Blueprint v1 — ditutup daftar 30 butir yang menunggu keputusan. |
| AUDIT-KESEGARAN.md | Dua audit isi. Bagian A memeriksa peta dua belas teknologi — seluruhnya berstatus sebagian usang. Bagian B memeriksa empat bidang baru/berubah. |
| AUDIT-KELAYAKAN.md | Dua audit kelayakan. Bagian A memeriksa enam sumber berita, Bagian B memeriksa empat pilihan arsitektur. |
| docs/KEPUTUSAN.md | Ke-22 keputusan dalam satu halaman, berikut cara membatalkan tiap keputusan. Berlaku di atas KERANGKA.md kalau keduanya berbeda. |
| docs/RENCANA-V1.md | Rencana enam bulan yang menggantikan KERANGKA.md 2.9. Deployment naik dari Bulan 6 ke Bulan 1. |
| docs/PENYEBARAN.md | Runbook penyebaran, netral platform. Kredensial menarik citra, urutan postgres → migrate → api → web, variabel lingkungan, dan health check mana yang dipakai untuk apa. |
| docs/adr/ | Dua puluh lima Architecture Decision Record. Yang menyangkut penyebaran: ADR-019 memilih Vercel + Koyeb + Neon (gratis, tanpa kartu) dan menggantikan ADR-017 — kaki Koyeb-nya gugur untuk akun baru, dan ADR-025 menguji penggantinya; ADR-018 mengatur kapan citra dibangun ulang. |
| docs/SESSION-LOG.md | Catatan sesi kerja, urutan terbaru di atas. |
apps/api/ Host ASP.NET Core — health check, correlation id, OpenAPI
apps/web/ Next.js 16 App Router
services/technology/ Bounded context pertama — vertical slice + DDD ringan
packages/contracts/ Kontrak API yang dipakai bersama
tests/unit/ uji domain + infrastruktur
tests/integration/ uji host sungguhan + PostgreSQL sungguhan
database/ SQL migrasi hasil generate + skrip isi contoh
infrastructure/ Init Docker
Struktur yang dituju ada di KERANGKA.md 4.7. Yang ada sekarang baru sebagiannya — direktori untuk bagian yang belum diputuskan sengaja belum dibuat.
KERANGKA.md merekam apa yang dikatakan pemilik, apa adanya. Hasil pemeriksaan fakta ditaruh di berkas audit terpisah, supaya kata-kata pemilik tidak tercampur dengan koreksi. Tidak ada koreksi audit yang diterapkan ke KERANGKA.md tanpa keputusan eksplisit — satu-satunya bagian tulisan asisten di sana adalah 4.20 Rekonsiliasi, dan itu sudah ditandai sebagai pengecualian.
⚠️ Bagian ini dulu memuat dua belas bidang. Angka itu dibatalkan ADR-010; yang mengikat sekarang empat belas, dan daftarnya ditegakkan kode —FieldCatalogdisemai migrasi, danFieldCatalogTestsmenuntut jumlah yang tepat. Dua bidang yang sebelumnya tidak tercantum di sini sama sekali: Data Engineering dan Edge AI.🆕 Sejak 2026-10-07 menjadi tujuh belas. Pemilik menambahkan tiga bidang Deep Tech di bawah XR — lihat ADR-010 Pembaruan 2026-10-07, termasuk satu koreksi atas teks yang diajukan (
superkonduktor suhu kamarbelum terbukti).
| Prioritas | Bidang |
|---|---|
| Core (6) | AI & Machine Learning · AI Agents · Cybersecurity · Cloud & Infrastructure · Data Engineering · IoT |
| Supporting (7) | Edge AI · Robotics · Quantum Computing · Biotechnology · Blockchain · Renewable Energy · Advanced Computing & Hardware |
| Peripheral (4) | Space Technology · XR (AR/VR/MR) · Neurotechnology & BCI · Advanced Materials & Nanotech |
Tiga nama sengaja berbeda dari daftar lama: Cloud & Infrastructure (bukan "Cloud" saja), XR (AR/VR/MR) (bukan "AR/VR"), dan Edge AI yang berdiri sendiri — bukan anak IoT.
Ditambah satu kategori terbuka: teknologi baru yang belum muncul.
TechVerse X
│
├── 🌐 Explore Jelajahi teknologi
├── 🧠 Learn Roadmap & pembelajaran
├── 🧪 Labs Eksperimen & project
├── 🤖 AI AI Mentor
├── 📰 Intelligence Berita & perkembangan terbaru
├── 🕸 Knowledge Graph Hubungan antar teknologi
└── 🚀 Future Emerging technologies
✅ Keduanya sudah bisa hidup berdua: nav utama berisi fungsi, dan tiap bidang punya URL kanonik
/teknologi/<slug>— Issue #1 ditutup, lihat ADR-009. Bidangnya kini empat belas, bukan dua belas (ADR-010). Navigasinya sengaja bertahap — lihat ADR-024 untuk pemicu tiap bagian.
Tiga audit dijalankan pada 2026-09-02 (total 29 agen, nol gagal). Yang paling perlu diketahui sebelum menambah kode:
- ⏰
.NET 9berhenti didukung 10 November 2026. Yang benar.NET 10(LTS sampai 14 November 2028). Turun ke.NET 8tidak menolong — berakhir di tanggal yang sama persis. → B1 · sudah diterapkan, ADR-002 - LangGraph tidak punya SDK .NET. Memakainya diam-diam berarti dua runtime. → B2 · sudah diputuskan: LangGraph dibuang, pakai Microsoft Agent Framework, ADR-007
- Auth.js secara desain bukan penerbit token untuk API di luar aplikasi Next.js-nya. → B3 · sudah diputuskan: V1 tanpa login; kalau nanti dipasang, Clerk sebagai IdP, ADR-013
- Kurikulumnya akan lahir usang kalau dipakai apa adanya — AutoGen maintenance mode, Sora ditutup, GPT-5 dipensiunkan. → Enam Kesalahan Paling Berbahaya
- Otomatisasi berita layak, tapi GitHub Trending tidak punya API dan hanya arXiv yang jelas boleh dipublikasi ulang. → Bagian A
Kedua berkas audit membawa peringatan metodenya masing-masing. Baca bagian peringatan di kaki tiap berkas sebelum mengutip angkanya.
- Buka docs/KEPUTUSAN.md — ke-22 keputusan dalam satu halaman. Ini yang berlaku.
- Buka docs/RENCANA-V1.md — apa yang dikerjakan bulan ini, dan satu angka untuk mengukur kemajuannya.
- Buka ADR-008 — batas apa yang sudah dan belum dibangun; bagian Pembaruan mencatat gerbang mana yang sudah terangkat.
- KERANGKA.md dibaca sebagai rekaman kata pemilik, bukan sebagai rencana yang berlaku.
Belum ditentukan — pilihannya milik pemilik (ADR-026). Repositori ini publik sejak 2026-09-28, tapi tanpa berkas LICENSE seluruh hak cipta tetap pada pemilik: kodenya boleh dibaca dan di-fork di GitHub menurut Ketentuan Layanan GitHub, dan tidak otomatis boleh dipakai ulang, diubah, atau disebarkan di luar itu.