Skip to content

🌟 Open source platform untuk career guidance & student wellbeing dengan AI mentor - Membantu siswa Indonesia menemukan passion, curhat dengan aman, dan Guru BK mendapat data insights untuk lingkungan sekolah yang lebih baik.

License

Notifications You must be signed in to change notification settings

ITIF-Syuhada/we-will-shine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

🌟 We Will Shine - Career Quest

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.

✨ Tentang Project

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

Origin Story:

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. πŸ’

🌍 Our Vision: Free & Open Source for All Schools

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


🎯 Features

Student App (/app):

  • βœ… 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

Admin Panel (/dashboard):

  • βœ… 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

πŸ—ΊοΈ URL Structure

Development

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


πŸš€ Quick Start

Project SvelteKit yang dikonfigurasi untuk deployment ke GitHub Pages.

πŸš€ Cara Deploy ke GitHub Pages

1. Persiapan Repository GitHub

  1. Buat repository baru di GitHub dengan nama we-will-shine
  2. 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 main

Ganti USERNAME dengan username GitHub Anda.

2. Konfigurasi GitHub Pages

  1. Buka repository di GitHub
  2. Pergi ke Settings > Pages
  3. Pada Source, pilih GitHub Actions

3. Update Base Path (Jika Diperlukan)

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' : '';
}

4. Deploy Otomatis

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/

πŸ’» Development Lokal

Install dependencies:

pnpm install

Jalankan development server:

pnpm run dev

# atau buka di browser secara otomatis
pnpm run dev --open

πŸ—οΈ Build Manual

Untuk membuat production build:

pnpm run build

Preview production build:

pnpm run preview

πŸ§ͺ Testing

Jalankan end-to-end tests dengan Playwright:

# Run tests headless
pnpm run test:e2e

# Run tests dengan UI mode (interactive)
pnpm run test:e2e:ui

Test coverage meliputi:

  • βœ… Navigation antar halaman
  • βœ… Sverdle game functionality (keyboard input, game state, localStorage)
  • βœ… Halaman About dan How-to-play

πŸ“ Struktur Project

  • src/routes/ - Halaman dan routing aplikasi
  • static/ - File static (favicon, images, dll)
  • .github/workflows/ - GitHub Actions workflow untuk deployment
  • svelte.config.js - Konfigurasi SvelteKit dengan adapter-static

πŸ”§ Konfigurasi Penting

svelte.config.js

  • Menggunakan @sveltejs/adapter-static untuk static site generation
  • Base path disesuaikan untuk GitHub Pages
  • Fallback ke 404.html untuk SPA routing

src/routes/+layout.ts

  • prerender: true - Pre-render semua halaman
  • trailingSlash: 'always' - Tambahkan trailing slash untuk kompatibilitas

static/.nojekyll

  • File ini mencegah GitHub Pages menggunakan Jekyll
  • Penting untuk file/folder yang dimulai dengan underscore

πŸ› οΈ Troubleshooting

CSS/JS tidak load

Pastikan base path di svelte.config.js sesuai dengan nama repository.

404 saat refresh halaman

Pastikan fallback: '404.html' ada di konfigurasi adapter.

Build gagal di GitHub Actions

Periksa log di tab Actions di repository GitHub Anda.

Halaman dengan server-side logic tidak berfungsi di GitHub Pages

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:

  1. Hapus +page.server.ts atau set export const ssr = false
  2. Set export const prerender = true di +page.ts
  3. Gunakan localStorage atau client-side state management
  4. Verifikasi dengan pnpm run build bahwa file .html ter-generate di folder build/

Contoh: Halaman Sverdle sudah diperbaiki dari server-side (cookies) menjadi client-side (localStorage). Lihat CHANGELOG.md untuk detail.

πŸ“š Dokumentasi Project

Core Documentation:

Legacy Documentation:

Contributing:

External Docs:


🀝 Contributing

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


πŸ‘₯ Contributors

This project exists thanks to all the people who contribute.

Founder & Creator:

Core Team:

Want to be listed here? Make a contribution and you'll be added automatically!


πŸ“œ License

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

πŸ™ Acknowledgments

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:


πŸ“ž Contact & Support

For Schools:

For Contributors:

For Partnerships:

Security:


⭐ Star This Repo!

If you find this project useful, please consider giving it a star! It helps us reach more schools and contributors.

GitHub stars GitHub forks


πŸš€ Roadmap

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"

About

🌟 Open source platform untuk career guidance & student wellbeing dengan AI mentor - Membantu siswa Indonesia menemukan passion, curhat dengan aman, dan Guru BK mendapat data insights untuk lingkungan sekolah yang lebih baik.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published