Jamorham
Nightscout용 xDrip+ 버전
AeroSense는 실시간 날씨·공기질을 모니터링하고 AI 카메라로 나쁜 공기일 때 마스크 착용을 확인합니다
AeroSense memantau cuaca dan kualitas udara secara realtime, lalu memakai AI kamera untuk memastikan kamu bermasker sebelum keluar saat udara buruk.
건강JavaScript · TypeScriptGitHub @BagaskaraAP-Dev온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기AeroSense — aplikasi cuaca & kualitas udara berbasis AI untuk Palembang, dengan gerbang masker AI kamera. Dibuat oleh mahasiswa Universitas Bina Darma.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Dibuat oleh Bagaskara Amukti Palapa, mahasiswa Universitas Bina Darma, Palembang. Coba langsung: https://aerosense-pied.vercel.app (buka di Chrome HP, lalu ⋮ → Tambahkan ke layar utama) Berjalan di Chrome/Edge 99+, Safari/iOS 15.4+, Firefox 97+, dan Samsung Internet 18+, baik di HP maupun laptop. AeroSense adalah aplikasi cuaca berbasis AI untuk Palembang (dan kota lain). Namanya berarti "merasakan udara": aero (udara) + sense (indra). Logonya adalah perahu Sungai Musi yang memancarkan gelombang radar.README 전문 보기 ↗
Dibuat oleh Bagaskara Amukti Palapa, mahasiswa Universitas Bina Darma, Palembang.
Coba langsung: https://aerosense-pied.vercel.app (buka di Chrome HP, lalu ⋮ → Tambahkan ke layar utama)
Berjalan di Chrome/Edge 99+, Safari/iOS 15.4+, Firefox 97+, dan Samsung Internet 18+, baik di HP maupun laptop.
AeroSense adalah aplikasi pemantau kualitas udara untuk Palembang (dan kota lain). Namanya berarti "merasakan udara": aero (udara) + sense (indra). Logonya adalah perahu Sungai Musi yang memancarkan gelombang radar.
Isi layarnya, dari atas ke bawah:
Tampilan mengikuti mode gelap/terang HP. Tidak ada animasi latar, dan model AI kamera (± 12 MB) baru diunduh saat tombol cek masker ditekan.
| Bagian | Teknologi | Jalan di mana |
|---|---|---|
| Deteksi wajah | MediaPipe BlazeFace (neural network, Google) | Browser/HP, offline |
| Deteksi masker | Warna kulit di sekitar mata dipelajari, lalu dibandingkan dengan area hidung & mulut (ruang warna YCbCr) | Browser/HP |
| Pendapat kedua foto masker | Gemini atau Claude (vision) | Server, hanya kalau pengguna menekan tombolnya |
Foto dari kamera tidak dikirim ke mana pun, kecuali pengguna sendiri menekan "Minta pendapat kedua".
Keterbatasan detektor masker: masker berwarna krem atau sewarna kulit, serta janggut lebat, bisa salah terbaca. Cahaya yang terlalu gelap akan memunculkan pesan "Cahaya kurang".
WAQI_TOKEN (gratis, lihat di bawah).Saat kabut asap, model CAMS bisa jauh di bawah kenyataan. Contoh 8 Okt 2026 pukul 17.00: stasiun BMKG Talang Betutu mencatat AQI 434, sedangkan model hanya membaca PM2.5 ± 200 µg/m³.
us_aqi bawaan Open-Meteo memakai rata-rata 24 jam (PM) dan 8 jam (ozon), sehingga tertinggal
berjam-jam: asap yang sudah menipis masih terbaca "sangat tidak sehat", dan ozon siang hari masih
terbawa sampai tengah malam. AeroSense menghitung ulang AQI dari konsentrasi per jam:
npm install
npm run dev # buka http://localhost:3000
Browser hanya mengizinkan kamera di https:// atau localhost. Untuk mencobanya di HP lewat Wi-Fi yang
sama:
npm run dev:hp # HTTPS dengan sertifikat self-signed
Buka https://<IP-laptop>:3000 di HP, lalu terima peringatan sertifikat. Cara paling mudah untuk
presentasi adalah deploy ke Vercel, yang langsung memakai HTTPS.
AeroSense bisa dipasang seperti aplikasi: buka di Chrome HP, lalu pilih menu ⋮ → Tambahkan ke layar utama.
.env.example menjadi .env.local, lalu isi WAQI_TOKEN=.npm run dev.Kartu kualitas udara akan menampilkan "Terukur di · km · BMKG". Kalau token belum diisi atau tidak ada stasiun aktif di dekat lokasi, kartu menulis bahwa angkanya perkiraan model.
Pilih salah satu penyedia. Tanpa keduanya, semua fitur tetap berjalan; hanya tombol "Minta pendapat kedua" di hasil cek masker yang disembunyikan.
GEMINI_API_KEY.
Model bawaan gemini-3.8-flash, otomatis pindah ke gemini-3.5-flash-lite saat Google sedang sibuk; ganti lewat GEMINI_MODEL bila perlu.ANTHROPIC_API_KEY.Salin .env.example menjadi .env.local, isi key-nya, lalu jalankan ulang npm run dev. Di Vercel, tambahkan
lewat npx vercel env add GEMINI_API_KEY production lalu deploy ulang. Kalau dua key terisi, Gemini yang dipakai
(atur dengan AI_PROVIDER=claude).
Kalau saat presentasi udaranya sedang bersih, nyalakan Simulasi kabut asap di bagian bawah halaman. AQI akan dipaksa ke 268 supaya alur "wajib masker → scan kamera" bisa didemokan. Selama mode ini aktif, sebuah banner menandai bahwa angkanya bukan data asli.
src/app/page.tsx halaman utama
src/app/api/mask-check pendapat kedua AI untuk foto masker (GET: penyedia yang aktif)
src/lib/ai.ts pilih penyedia AI (gemini.ts / claude.ts)
src/app/api/station AQI terukur dari stasiun darat terdekat (WAQI)
src/lib/station.ts cari stasiun aktif terdekat (server, memakai WAQI_TOKEN)
src/components/AeroSenseApp.tsx UI utama
src/components/MaskScanner kamera + overlay AI
src/lib/weather.ts ambil data, hitung AQI, panduan per kategori
src/lib/mask-detector.ts deteksi wajah & masker
src/app/icon.svg logo (npm run icons membuat versi PNG)