Har bir ovoz eshitiladi — shifoxonalar uchun anonim bemor fikr-mulohaza platformasi
Translation pending
HealthTypeScript · JavaScriptGitHub @abbossthOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Shifoxonalarda bemorlarning fikr-mulohaza va shikoyatlarini QR-kod orqali to'liq anonim tarzda yig'ib, sun'iy intellekt yordamida tahlil qiluvchi va tegishli bo'limga yo'naltiruvchi platforma. Umummilliy AI Xakaton (Xorazm, 2026) uchun.Read the full README ↗
Shifoxonalarda bemorlarning fikr-mulohaza va shikoyatlarini QR-kod orqali to'liq anonim tarzda yig'ib, sun'iy intellekt yordamida tahlil qiluvchi va tegishli bo'limga yo'naltiruvchi platforma. Umummilliy AI Xakaton (Xorazm, 2026) uchun.
/dashboard); bemor tomonida
hech qanday autentifikatsiya yo'qsrc/lib/ai) — hozircha Gemini
(gemini-3.6-flash) ulangan; AI_PROVIDER=anthropic + ANTHROPIC_API_KEY
qo'yilsa, kod o'zgarishsiz Claude'ga o'tadisrc/lib/conversation),
matn ham, ovoz ham shuni ishlatadi. Gemini (gemini-3.6-flash, structured output) faqat
maydonlarni ajratadi va javob matnini yozadi; bosqichlar, savollar chegarasi (max 3) va
tasdiqlash serverda kod bilan boshqariladisrc/lib/voice) — NeuronAI asosiy (VOICE_PROVIDER),
ishlamasa yoki balansi tugasa VoiceLab'ga avtomatik o'tadi. Ovoz suhbat mantig'iga
qo'shilmaydi: STT matn beradi, motorning matn javobi TTS bilan o'qiladiPushNotificationBanner, Sozlamalar). Telegram bilan parallel ishlaydi
(src/lib/push, public/sw.js)qrcode + @react-pdf/renderersrc/lib/createFeedback.tsdagi bitta pipeline'ni ishlatadinpm install
npm run dev
.env.local allaqachon barcha kalitlar bilan to'ldirilgan (MongoDB, Gemini, Firebase
web config + Admin SDK, VoiceLab). Ixtiyoriy qolgan narsa:
ANTHROPIC_API_KEY — agar Claude'ga o'tmoqchi bo'lsangiz (AI_PROVIDER=anthropic)CONVERSATION_SECRET — suhbat holati tokenini imzolaydi (openssl rand -hex 32)NEXT_PUBLIC_VAPID_PUBLIC_KEY, VAPID_PRIVATE_KEY, VAPID_SUBJECT — panel bildirishnomalari
uchun (npx web-push generate-vapid-keys); public kalit build vaqtida kerakTo'liq ro'yxat uchun .env.examplega qarang.
# Bitta hospital + 3 ta bo'lim yaratadi, /f/... havolalarini chop etadi
npm run seed
# Firebase Auth foydalanuvchisini (Console orqali yaratilgan) MongoDB Staff bilan bog'laydi
node --env-file=.env.local scripts/create-staff.mjs [email protected] "Ism Familiya"
Login qilish uchun avval Firebase Console > Authentication'da foydalanuvchi (email + parol) yaratish kerak — o'zi ro'yxatdan o'tish yo'q (spetsifikatsiya talabi).
npm run test # Vitest — suhbat motori, holat tokeni, ovoz VAD/failover, retry, tracking code
# Gemini prompt sifati (haqiqiy API, kvota sarflaydi):
LIVE_GEMINI=1 node --env-file=.env.local node_modules/.bin/vitest run src/lib/conversation/live.eval.test.ts
npm run lint # ESLint
npx tsc --noEmit
npm run build # production build
src/app/f/[hospitalId]/[departmentId] — bemor formasi (autentifikatsiyasiz)src/app/dashboard — xodimlar paneli (Firebase Auth talab qilinadi)src/app/(marketing) (/, /narxlar) — bosh sahifa va narxlarsrc/lib/ai — provayderdan mustaqil AI qatlami (Gemini/Anthropic)src/lib/voice — STT/TTS qatlami, VoiceLab → NeuronAI avtomatik fallback bilansrc/lib/conversation — suhbat motori: engine.ts (state machine), model.ts (Gemini),
token.ts (imzolangan holat), finalize.ts (tasdiqlangach yuborish)src/components/patient — ConversationView (matn va ovoz uchun umumiy chat),
TextComposer, VoiceControls (mikrofon/orb, STT/TTS)src/lib/createFeedback.ts — yagona feedback-yaratish pipeline (web forma +
ikkala Telegram bot shu bittasini chaqiradi)src/lib/telegram — ikkala botning grammY logikasi (staffBot.ts,
patientBot.ts, notifyStaff.ts)src/app/api/telegram — webhook route'lar, staff link-token API, digest cronsrc/models — Mongoose sxemalari (Hospital, Department, Staff, Feedback, Lead,
TelegramLinkToken, TelegramNotification)scripts/ — seed va staff-yaratish skriptlariissueTag (masalan dori_vaqtida_berilmadi) beradi; dashboard bir xil tag +
bo'lim bo'yicha 14 kunlik oynada 3+ xabarni "tizimli muammo" deb belgilaydi.
Oddiy, tez va tushunarli — embedding pipeline shart emas.So'rov yuborish /
Aloqaga chiqish) — dizaynga va spetsifikatsiyaga mos, checkout yo'q.withRetry 503/429 kabi vaqtinchalik xatolarni
backoff bilan qayta uradi; agar baribir muvaffaqiyatsiz bo'lsa, xabar "o'rta"
jiddiylik bilan saqlanadi — bemor hech qachon xabarini yo'qotmaydi./api/voice/stt audio baytlarini faqat so'rov davomida
xotirada ushlaydi, diskka yoki DB'ga yozmaydi — javob qaytgach yo'qoladi.