ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기E-modul Fisika Fase F tentang gelombang bunyi lewat kearifan lokal Gendang Beleq Sasak. Lab simulasi audio, dugaan berbasis fisika, LKPD, bank soal, dan panel guru dengan penilaian.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
E-modul Fisika Fase F tentang gelombang bunyi, dibangun di atas kearifan lokal Gendang Beleq Sasak. Sisi siswa berisi materi, lab simulasi audio, dua LKPD penyelidikan, dan bank soal. Sisi guru berisi panel yang mengelola seluruh konten, kelas, dan daftar nilai. Frontend-nya static export (output: "export"), jadi bisa ditaruh di hosting statis mana pun. Penyimpanan nilai memakai Supabase, yang dipanggil langsung dari browser.README 전문 보기 ↗
E-modul Fisika Fase F tentang gelombang bunyi, dibangun di atas kearifan lokal Gendang Beleq Sasak. Sisi siswa berisi materi, lab simulasi audio, dua LKPD penyelidikan, dan bank soal. Sisi guru berisi panel yang mengelola seluruh konten, kelas, dan daftar nilai.
Frontend-nya static export (output: "export"), jadi bisa ditaruh di hosting statis
mana pun. Penyimpanan nilai memakai Supabase, yang dipanggil langsung dari browser.
bun install
cp .env.local.example .env.local # isi dari dashboard Supabase
bun run dev
| Perintah | Kegunaan |
|---|---|
bun run dev | Server pengembangan |
bun run build | Membangun ulang konten publik lalu next build |
bun run content | Menghasilkan ulang konten tanpa kunci jawaban |
bun run test | Pemeriksaan mandiri untuk parser gaya dan mesin penilaian |
bun run lint | ESLint |
./scripts/setup-supabase.sh | Wizard penyiapan Supabase, aman dijalankan ulang |
Jalankan wizard-nya. Ia membuka setiap halaman dashboard yang kamu butuhkan, memberi tahu persis apa yang harus diklik, menangkap nilai yang kamu salin, dan menuliskannya ke tempat yang benar.
./scripts/setup-supabase.sh
Delapan tahap, sekitar sepuluh menit:
| Tahap | Yang terjadi |
|---|---|
| 1 · Prasyarat | Memeriksa perkakas yang ada di komputermu |
| 2 · Buat proyek | Menangkap Project URL dan anon key ke .env.local |
| 3 · Anonymous sign-in | Mengaktifkan cara siswa bergabung tanpa kata sandi |
| 4 · Migrasi skema | Menyalin 0001_init.sql ke papan klip untuk SQL Editor |
| 5 · Konten bawaan | Mengisi draf guru berikut seluruh kunci jawaban |
| 6 · Akun guru | Mendaftarkan akun kamu di tabel teachers |
| 7 · Edge Function | Deploy submit, yang menilai jawaban siswa |
| 8 · Verifikasi | Menjalankan uji dan menunjukkan langkah terakhir |
Wizard aman dijalankan ulang: nilai yang sudah tersimpan di .env.local ditawarkan
sebagai bawaan, dan berhenti dengan Ctrl-C tidak merusak apa pun. Ia juga menolak
kunci service_role kalau tersalin keliru, karena kunci itu melewati seluruh aturan
keamanan baris dan tidak boleh sampai ke peramban siswa.
Setelah selesai: bun run dev, tekan Panel Guru, buat satu kelas di tab Kelas,
lalu tekan Terbitkan di tab Data agar konten sampai ke siswa.
Buat proyek Supabase, salin Project URL dan anon key ke .env.local
(lihat .env.local.example).
Aktifkan Allow anonymous sign-ins di Authentication → Sign In / Providers.
Jalankan keempat berkas di supabase/migrations/ berurutan, 0001 sampai 0004, di SQL Editor.
Buat akun guru di Authentication → Users, salin UID-nya, lalu:
insert into teachers (auth_uid, nama) values ('<uid>', 'Nama Guru');
supabase functions deploy submit
Ini aturan yang menahan seluruh sistem penilaian, dan dijaga di empat tempat.
content/defaults.mjs adalah satu-satunya sumber konten yang memuat kunci jawaban.
Berkas ini tidak diimpor oleh kode apa pun di dalam app/.scripts/build-content.mjs menghasilkan app/components/content-public.js tanpa
key, keys, accept, keywords, model, dan fb, lalu menolak menulis kalau
masih ada yang tersisa.submit, memakai konten asli di server. Kunci
baru dikirim balik ke siswa setelah jawabannya terkunci, sebagai pembahasan.app/components/grading.test.mjs menegakkan aturan itu sebagai uji.Kalau suatu saat ada tipe soal baru dengan nama kolom kunci yang lain, tambahkan nama
kolom itu ke SECRET di supabase/functions/_shared/grading.ts.
| Berkas | Isi |
|---|---|
content/defaults.mjs | Konten bawaan lengkap, satu-satunya tempat kunci jawaban ditulis |
supabase/functions/_shared/grading.ts | Mesin penilaian, dipakai server dan klien |
supabase/functions/submit/index.ts | Menilai dan menyimpan satu jawaban |
supabase/migrations/ | Skema, RLS, dan isi awal |
app/lib/ | Klien Supabase, sesi, dan data panel guru |
app/components/ | Seluruh antarmuka; EModul.jsx memegang state dan view-model |
scripts/setup-supabase.sh | Wizard penyiapan, delapan tahap |