Panduan lengkap untuk mengajar sesi capstone — bina micro-SaaS lengkap dari landing page hingga subscription payment menggunakan AI.
Ini adalah sesi capstone yang menggabungkan SEMUA pengetahuan dari 13 fasa sebelumnya. Pelajar akan membina micro-SaaS yang lengkap dan berfungsi — dari landing page, authentication, dashboard, subscription payment, sehinggalah ke database dan deployment.
Sesi ini direka untuk memberi pelajar pengalaman end-to-end membina produk digital yang boleh dijual. Pada akhir sesi, setiap pelajar akan memiliki SaaS yang berfungsi di internet.
SaaS (Software as a Service) adalah model perniagaan di mana pelanggan membayar yuran berulang (bulanan/tahunan) untuk menggunakan aplikasi yang dihoskan di internet. Ini adalah model yang paling popular dalam ekonomi digital hari ini.
Selepas sesi ini, pelajar bukan lagi "pelajar Vibe Coding". Mereka adalah PEMBINA SAAS — mampu bina, deploy, dan JUAL aplikasi sendiri dengan AI sebagai rakan kreatif.
Inspirasi: Banyak syarikat SaaS terbesar dunia bermula sebagai projek sampingan — GitHub, Slack, Dropbox, Canva. Beritahu pelajar: "SaaS besar-besaran hari ini dulu hanyalah kod dalam laptop seseorang."
Terangkan apa itu SaaS dengan analogi mudah dan contoh dunia nyata:
Analogi: SaaS macam "sewa rumah" vs "beli rumah". Dulu kita beli software sekali (beli CD, install sekali). Sekarang kita sewa — bayar bulanan, dapat update automatik, boleh guna di mana-mana, tak perlu maintain sendiri.
Tip Pengajar: Tanya pelajar: "Apa satu masalah dalam hidup korang yang boleh diselesaikan dengan software?" Setiap jawapan adalah bakal idea SaaS. Contoh: "Saya susah nak track perbelanjaan" -> SaaS akaun tracking. "Saya nak belajar coding" -> SaaS pembelajaran.
Tunjukkan seni bina SaaS secara visual. Lukis/gunakan slaid untuk menerangkan bagaimana semua komponen berhubung:
Konsep Utama: Tekankan bahawa SaaS adalah gabungan SEMUA fasa — landing page (Fasa 3), styling (Fasa 4), database (Fasa 6), dashboard (Fasa 7), deployment (Fasa 8 & 10), dan AI prompting (Fasa 2). Ini adalah "ultimate test" penguasaan pelajar.
Demo langsung membina subscription flow langkah demi langkah. Guna AI sebagai rakan coding sepanjang proses:
Tip Pengajar: Jangan tulis kod manually. GUNA AI SEPANJANG MASA. Tunjukkan bagaimana prompt yang baik boleh menghasilkan SaaS yang berfungsi dalam beberapa minit. Ini adalah intipati "Vibe Coding".
Pelajar mengikuti modul pelajar langkah demi langkah. Galakkan mereka untuk:
Semasa pelajar bekerja, berkeliling untuk membantu. Fokus pada:
Setiap pelajar/pasangan demo SaaS mereka selama 2-3 minit:
Celebration Moment: Pada akhir showcase, berikan tepukan gemuruh untuk setiap pelajar. Mereka telah membina SaaS yang berfungsi — satu pencapaian yang 99% orang tidak pernah lakukan. Beritahu mereka: "Hari ini, korang bukan lagi pengguna software. Korang adalah pencipta software."
Demo ini menggunakan slaid/whiteboard untuk menerangkan seni bina SaaS. Tujuan adalah memberi pelajar gambaran mental yang jelas sebelum mereka mula membina.
Lukis rajah berikut di whiteboard atau tunjuk slaid:
Terangkan: Anak panah menunjukkan flow pengguna. Setiap kotak adalah komponen berasingan yang akan dibina menggunakan AI. Tak perlu risau tentang details teknikal — AI akan handle coding. Pelajar hanya perlu faham "apa" setiap komponen buat.
Buka 3-4 contoh SaaS di browser dan analisis seni binanya:
Tip: Tanya pelajar: "Canva guna berapa banyak halaman? Apa stack teknologi dia?" Walaupun mereka tak tahu pasti, proses berfikir ini membantu mereka memahami seni bina SaaS secara intuitif.
Demo ini adalah live coding — tetapi GUNA AI SEPENUHNYA. Anda hanya perlu prompt AI, salin output, dan tunjuk hasilnya.
Prompt contoh: "Brainstorm 5 idea micro-SaaS untuk pelajar universiti di Malaysia. Setiap idea perlu: (1) masalah yang diselesaikan, (2) target pengguna, (3) 3 pricing tiers."
Pilih satu idea untuk demo. Cadangan: "Task Manager untuk Pelajar" — mudah difahami dan relatable.
Prompt contoh: "Bina satu halaman HTML landing page untuk SaaS task manager pelajar. Guna dark theme. Ada: hero section dengan tagline, features grid (6 features), pricing table 3 tiers (Free RM0, Pro RM19/bln, Premium RM49/bln), CTA buttons, dan footer. Guna design professional, gradient accents, clean typography."
Copy output AI ke fail index.html. Buka di browser. Tunjukkan hasilnya.
Prompt contoh: "Saya ada landing page HTML untuk SaaS task manager. Saya nak tambah auth: login, signup, logout. Guna Supabase. Bagi saya: (1) HTML untuk signup page, (2) HTML untuk login page, (3) JavaScript untuk integrate Supabase Auth, (4) redirect ke dashboard selepas login. Project URL: [url], anon key: [key]."
Prompt contoh: "Bina dashboard HTML untuk SaaS task manager. Protected — hanya boleh access kalau user sudah login. Ada: (1) profile section — tunjuk nama, email user, (2) subscription status — "Free Plan" / "Pro Plan", (3) usage stats — "Tasks Created: 5/10", (4) navigation: Dashboard, Tasks, Settings, Logout button. Guna dark theme, sidebar navigation."
Prompt contoh: "Saya nak tambah subscription payment ke SaaS task manager saya. Guna Stripe test mode. Bagi saya: (1) HTML pricing page dengan 3 plan, (2) JavaScript untuk Stripe Checkout — redirect ke Stripe payment page, (3) success page selepas payment, (4) cancel page. Guna publishable key: [pk_test_...]"
Dalam 45 minit, pelajar akan lihat anda membina SaaS yang berfungsi sepenuhnya — dari landing page ke payment — hanya dengan prompting AI. Ini akan memberi mereka keyakinan untuk melakukannya sendiri.
Pelajar nak bina "SaaS macam Canva" — terlalu besar untuk projek satu sesi.
Penyelesaian: Ajar konsep "Micro-SaaS" — fokus pada SATU masalah spesifik. "Canva untuk resume" bukan "Canva saingan".
Selepas login, user stuck dalam redirect loop. Biasanya sebab session handling salah.
Penyelesaian: Check Supabase Auth configuration. Pastikan redirect URL betul. Guna AI untuk debug: "My Supabase auth redirect loop after login. Here's my code..."
Stripe checkout page muncul tapi tak redirect balik ke dashboard. Atau webhook tak setup.
Penyelesaian: Untuk test mode, guna flow mudah — selepas payment success, redirect manual ke dashboard. Webhook boleh diajar kemudian.
Users table dan subscriptions table tak terhubung dengan betul. Data payment tak update.
Penyelesaian: Guna Supabase dashboard untuk manually check data. Ajar SQL query mudah: SELECT * FROM subscriptions WHERE user_id = 'xxx'.
Pelajar tak puas hati dengan design. Rasa SaaS dia nampak "cheap".
Penyelesaian: Guna AI untuk improve design: "Make this SaaS landing page look more professional — better typography, spacing, colors, and animations." Atau guna template CSS premium seperti Tailwind UI.
Pelajar nak tambah "semua feature" dalam satu sesi.
Penyelesaian: Ajar "MVP mindset" — Minimum Viable Product. "What is the SMALLEST version of your SaaS that still provides value?" Fokus pada satu feature utama yang berfungsi dengan sempurna.
Masa habis sebelum sempat deploy ke internet.
Penyelesaian: Prioritize deployment lebih awal. Atau deploy awal — hosting static page dulu, lepas tu update dengan features baru. "Deploy early, deploy often."
Pelajar sering "blank" bila disuruh pilih idea. Guna pendekatan ini:
Untuk kelas lanjutan: Selepas sesi capstone, bincang topik seperti: customer acquisition, churn rate reduction, A/B testing landing page, analytics dan metrics, scaling infrastructure, dan building a team. Rujuk pelajar ke sumber seperti halaman rujukan untuk prompt template dan resources lanjut.
SaaS adalah puncak gunung ais — ia menggabungkan SEMUA kemahiran yang dipelajari sepanjang kursus Vibe Coding:
| Komponen SaaS | Fasa Berkaitan | Penerangan |
|---|---|---|
| Landing Page | Fasa 1, 3, 4 | HTML/CSS, responsive design, tools & skills |
| AI Prompting | Fasa 2 | Guna AI untuk brainstorm dan coding semua komponen |
| Dashboard | Fasa 7 | Protected pages, user profile, data visualisation |
| Database & Auth | Fasa 6 | Supabase untuk user management dan data storage |
| Deployment | Fasa 8, 10 | Deploy ke Cloudflare Pages / Netlify, custom domain |
| Version Control | Fasa 9 | GitHub untuk code management dan collaboration |
| Payment | Fasa 14 (ini) | Stripe/PayPal integration, subscription management |
| UX/UI Design | Fasa 5 | Professional look, branding, user experience |
Ini bukan sekadar "satu lagi fasa". Ini adalah pembuktian bahawa pelajar telah menguasai SEMUA kemahiran Vibe Coding dan mampu menggabungkannya untuk mencipta produk digital yang boleh dijual.