Aplikasi web interaktif untuk eksplorasi karir teknologi dengan perspektif Islam, dibuat sebagai hadiah penuh cinta dari Ustadz & Ustadzah untuk siswa-siswi SMP IT Masjid Syuhada.
We Will Shine adalah platform career guidance & student wellbeing yang membantu siswa:
- π― Mengeksplorasi 8 karir teknologi masa depan
- π§ Memahami kepribadian melalui quiz interaktif
- π€ Belajar dengan AI Mentor
- β¨ Merencanakan impian melalui Dream Board
- π Termotivasi dengan gamifikasi (points, levels, achievements)
- βͺοΈ Memahami nilai Islam dalam setiap profesi
Project ini diinisiasi dan digagas oleh sandikodev atas rasa syukur telah mendapat kesempatan untuk mengajar anak-anak SMP IT Masjid Syuhada yang soleh dan solehah.
Berawal dari hadiah sepatu yang diberikan siswa kepada guru, project ini menjadi hadiah balasan - bukan hanya coklat manis, tapi aplikasi yang memberi nilai edukatif untuk masa depan mereka. Sebuah bentuk terima kasih yang berbuah manfaat berkelanjutan. π
We Will Shine akan menjadi platform open source untuk membantu Guru BK di seluruh Indonesia:
- π Memberikan siswa tempat aman untuk curhat
- π€ AI yang peduli sebagai teman bicara
- π Data insights untuk Guru BK (privacy-first)
- π« 100% gratis untuk semua sekolah
- π Open source - dikembangkan bersama komunitas
β Read full vision: Open Source Vision | Ethics Framework
- β Unlock System - Login dengan kode unik dari coklat
- β Session-based Auth - Code tersimpan di localStorage dengan auto-expiry 7 hari
- β 8 Karir Teknologi - Software Dev, UI/UX, Data Analyst, AI/ML, dll
- β Personality Quiz - 6 pertanyaan dengan motivasi personal 300+ kata
- β AI Mentor - Chat interaktif untuk guidance
- β Dream Board - Tulis & track impian masa depan
- β Gamifikasi - Points, levels, 8 achievements
- β Mobile-Optimized - Bottom navbar, compact layout
- β Clean URLs - Tidak ada code parameter di URL
- β Students Management - Track 22 siswa & progress
- β Analytics - Engagement, leaderboard, career popularity
- β QR Generator - Generate QR codes untuk sticker coklat
- β Export Data - Download CSV untuk reporting
- β Column Visibility - Customize table columns display
http://localhost:5173/
βββ / β Landing page
βββ /unlock β Student login (dengan code)
βββ /login β Admin login β
β
βββ /app/ β Student portal β
β βββ /careers β Eksplorasi karir
β βββ /quiz β Quiz kepribadian
β βββ /achievements β Pencapaian
β βββ /ai-mentor β AI chat
β
βββ /dashboard/ β Admin panel β
βββ /students β Manage students
βββ /analytics β Analytics
βββ /settings β Configuration
β Dokumentasi lengkap: Routing Structure
Project SvelteKit yang dikonfigurasi untuk deployment ke GitHub Pages.
- Buat repository baru di GitHub dengan nama we-will-shine
- Push project ini ke repository GitHub:
git init
git add .
git commit -m "Initial commit: SvelteKit with GitHub Pages setup"
git branch -M main
git remote add origin https://github.com/USERNAME/we-will-shine.git
git push -u origin mainGanti USERNAME dengan username GitHub Anda.
- Buka repository di GitHub
- Pergi ke Settings > Pages
- Pada Source, pilih GitHub Actions
Jika nama repository GitHub Anda berbeda dari we-will-shine, update file svelte.config.js:
paths: {
base: process.env.NODE_ENV === 'production' ? '/nama-repository-anda' : '';
}Setiap kali Anda push ke branch main, GitHub Actions akan otomatis:
- Build aplikasi SvelteKit
- Deploy ke GitHub Pages
Website akan tersedia di: https://USERNAME.github.io/we-will-shine/
Install dependencies:
pnpm installJalankan development server:
pnpm run dev
# atau buka di browser secara otomatis
pnpm run dev --openUntuk membuat production build:
pnpm run buildPreview production build:
pnpm run previewJalankan end-to-end tests dengan Playwright:
# Run tests headless
pnpm run test:e2e
# Run tests dengan UI mode (interactive)
pnpm run test:e2e:uiTest coverage meliputi:
- β Navigation antar halaman
- β Sverdle game functionality (keyboard input, game state, localStorage)
- β Halaman About dan How-to-play
src/routes/- Halaman dan routing aplikasistatic/- File static (favicon, images, dll).github/workflows/- GitHub Actions workflow untuk deploymentsvelte.config.js- Konfigurasi SvelteKit dengan adapter-static
- Menggunakan
@sveltejs/adapter-staticuntuk static site generation - Base path disesuaikan untuk GitHub Pages
- Fallback ke
404.htmluntuk SPA routing
prerender: true- Pre-render semua halamantrailingSlash: 'always'- Tambahkan trailing slash untuk kompatibilitas
- File ini mencegah GitHub Pages menggunakan Jekyll
- Penting untuk file/folder yang dimulai dengan underscore
Pastikan base path di svelte.config.js sesuai dengan nama repository.
Pastikan fallback: '404.html' ada di konfigurasi adapter.
Periksa log di tab Actions di repository GitHub Anda.
GitHub Pages hanya mendukung static files. Halaman yang menggunakan:
- Server actions (form actions)
- Server-side rendering (SSR)
- Cookies atau session
Harus diubah menjadi client-side only:
- Hapus
+page.server.tsatau setexport const ssr = false - Set
export const prerender = truedi+page.ts - Gunakan localStorage atau client-side state management
- Verifikasi dengan
pnpm run buildbahwa file.htmlter-generate di folderbuild/
Contoh: Halaman Sverdle sudah diperbaiki dari server-side (cookies) menjadi client-side (localStorage). Lihat CHANGELOG.md untuk detail.
- π Product Vision - Comprehensive product strategy & roadmap β NEW
- ποΈ Technical Architecture - Complete technical implementation guide β NEW
- π£οΈ Development Roadmap - Detailed development timeline & milestones β NEW
- π€ Contributing Guide - Community contribution guidelines β NEW
- π API Documentation - Complete API reference & integration guide β NEW
- π Security & Privacy - Comprehensive security & privacy guidelines β NEW
- π§ͺ Testing Guide - Complete testing strategy & quality assurance β NEW
- π Deployment Guide - DevOps & deployment documentation β NEW
- π User Guide - Comprehensive user manual & tutorials β NEW
- π§ Troubleshooting & FAQ - FAQ & troubleshooting guide β NEW
- π Changelog - Complete release notes & changelog β NEW
- π Development Journey - Complete development timeline & decisions
- πΊοΈ Project Roadmap - Future plans (Phase 2-8, Vision 2030)
- π Open Source Vision - Free platform untuk semua sekolah
- π Ethics Framework - Privacy & ethical AI guidelines
- π Admin Guide - Panduan menggunakan admin dashboard
- π± Career Quest App - Student app features & usage
- π£οΈ Routing Structure - URL structure & session management
- π Supabase Migration - Upgrade localStorage β Database
- π§ Fix Sverdle 404 - Technical fix documentation
- βοΈ Workflows Guide - GitHub Actions & CI/CD
- π€ Contributing Guide - How to contribute to this project
- π Code of Conduct - Community guidelines
- π Security Policy - Report vulnerabilities
- π License - MIT License
We welcome contributions from everyone! Whether you're a developer, designer, educator, or student - there's a way for you to help.
Ways to Contribute:
- π» Code (features, bug fixes, improvements)
- π Documentation (guides, translations)
- π¨ Design (UI/UX, accessibility)
- π§ͺ Testing (bug reports, QA)
- π¬ Community (support, discussions)
Quick Start:
# Fork & clone the repo
git clone https://github.com/YOUR_USERNAME/we-will-shine.git
# Install dependencies
pnpm install
# Start development
pnpm run dev
# Run tests
pnpm run testβ Read full guide: CONTRIBUTING.md
This project exists thanks to all the people who contribute.
Founder & Creator:
- @sandikodev - Founder, Creator & Lead Developer
Core Team:
- @ITIF-Syuhada - Organization Account
Want to be listed here? Make a contribution and you'll be added automatically!
This project is licensed under the MIT License - see the LICENSE file for details.
What this means:
- β Free to use for any purpose
- β Free to modify and distribute
- β Free for commercial use
- β Just keep the license notice
Created by:
- π» @sandikodev - Founder & Creator
- "Atas rasa syukur telah mendapat kesempatan mengajar anak-anak SMP IT Masjid Syuhada yang soleh dan solehah"
Special Thanks:
- π Siswa-siswi 7D Putri (untuk inspirasi hadiah sepatu & menjadi pilot users)
- π SMP IT Masjid Syuhada (untuk kepercayaan dan dukungan)
- π¨βπ« Ustadz & Ustadzah (untuk guidance dan feedback)
- π¨βπ» All contributors & supporters
- π Open source community
Built with:
- SvelteKit - Framework
- TailwindCSS - Styling
- Supabase - Backend (planned)
- Gemini AI - AI (planned)
For Schools:
- π§ Email: schools@wewillshine.dev
- π Book Demo: calendly.com/wewillshine
For Contributors:
- π¬ GitHub Discussions
- π GitHub Issues
- π§ Email: hello@wewillshine.dev
For Partnerships:
- π€ Email: partnerships@wewillshine.dev
- π° Sponsorship: wewillshine.dev/sponsor
Security:
- π Email: security@wewillshine.dev
- π See: SECURITY.md
If you find this project useful, please consider giving it a star! It helps us reach more schools and contributors.
Current: v1.0 - Career Quest (MVP)
Next: v2.0 - Mental Health & BK Dashboard
Future: Open Source National Platform
β See full roadmap: ROADMAP.md
We Will Shine - Inspiring Tomorrow's Tech Leaders, Supporting Mental Health Today ππ
"Built with β€οΈ for students, by people who care"