ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Har kim uchun huquq: qonunlarni o'rganing, savolingizga qonun moddasi bilan javob oling, hujjatingizni tekshiring va yurist bilan bog'laning.
Translation pending
EducationTypeScript · PLpgSQLGitHub @hjurayev7727-blipOnlineOwner 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.
Huquq bo'yicha hammasi bir joyda — milliy sertifikatga tayyorgarlik va istalgan huquq sohasini mustaqil o'rganish. Next.js 16 + Supabase + Telegram. YURISTIM TEAM MChJ mahsuloti. Femida Edu — A+ Huquq 2.0 kodidan boshlangan alohida mahsulot (alohida repo, alohida Supabase, alohida bot). A+ Huquq o'z holicha ishlashda davom etadi. Reja: docs/V3_REJA.md, brend: docs/BREND.md, qarorlar: data/v3/polls.json (93 ta).Read the full README ↗
Huquq bo'yicha hammasi bir joyda — milliy sertifikatga tayyorgarlik va istalgan huquq sohasini mustaqil o'rganish. Next.js 16 + Supabase + Telegram. YURISTIM TEAM MChJ mahsuloti.
Femida Edu — A+ Huquq 2.0 kodidan boshlangan alohida mahsulot (alohida repo, alohida Supabase, alohida bot). A+ Huquq o'z holicha ishlashda davom etadi. Reja:
docs/V3_REJA.md, brend:docs/BREND.md, qarorlar:data/v3/polls.json(93 ta).
src/components/logo.tsx), to'q ko'k + oltin ranglar, sarlavhalar Playfair Display.public/brand/femida-statue.svg), favicon — oltin nuqtali F.F… (DOYSE kassasi F-buyurtmalarni shu saytga uzatadi).telegram.femidaedu.uz; bot: @FemidaEduBot (yaratilishi kerak).20261001000015_law_base.sql).npm run lex:import -- MK — lex.uz'dan (yoki --file matn.txt bilan nusxalangan matndan) import; all — ro'yxatdagi hammasi,
--dry — bazaga yozmasdan tahlil. Ro'yxat: data/lex/documents.json (A darajali 7 ta kodeks; lex_id'lar tekshirilishi kerak —
skript sahifa sarlavhasini solishtiradi va mos kelmasa to'xtaydi).changed, yo'qolsa — repealed,
ularga bog'langan e'lon qilingan savollar review holatiga qaytadi. Ekspert ko'rib chiqqach: ack_article_change(id)./app/sohalar — 18 soha (A/B/C guruhlari, rang/ikonka, o'zlashtirish foizi); /app/sohalar/<soha> — "Kodeks bo'yicha"
(hujjat → bob → modda, moddalar xaritasi) va "Hayotiy mavzular"; /app/sohalar/<soha>/<modda> — modda matni, lex.uz havolasi,
"Shu modda bo'yicha test", oldingi/keyingi modda.article_is_free, start_article_practice).npm run dev → /dev/sohalar (namuna ma'lumot)./app/testlar — mening testlarim, guruhga berilgan testlar, kod bilan ochish, haftalik AI limiti./app/testlar/yangi — manba: bazadagi moddalar (raqamlar yoki bob), matn, PDF/rasm; 5–50 savol (bepul: haftasiga 10 test × 10 savol).
AI 10 talik bo'laklarda tuzadi, savollar article_ref bo'yicha bazadagi moddaga bog'lanadi (topilmasa — "o'z materiali")./app/testlar/<id> — har savolni tahrirlash; javob kaliti o'zgarsa key_version++ va barcha natijalar jimgina qayta hisoblanadi
(eski ball score_history da); nashr: faqat men / havola / guruh / ochiq katalog; taymer, muddat, urinishlar, aralashtirish,
javob ko'rsatish (har savoldan keyin / oxirida / muddat tugagach), mehmonlar; natijalar va har savol bo'yicha to'g'ri %./t/<KOD> (6 belgi, 0/O/1/I yo'q), t.me/<bot>?startapp=t_<KOD> (Mini App), bot /start t_<KOD>, Telegram share./t: public + ishonch darajasi ≥ 1 (admin beradi) + AI moderatsiya + bazaga bog'langan + ≥ 5 savol + izohli ≥ 50%.npm run dev → /dev/testlar?sahifa=bosh|yangi|tahrir|karta|ishlash./app/yordamchi — "Tushuntirish" (modda/tushuncha, misol bilan) va "Kazus tahlili" (o'quv masalasi) suhbatlari;
kontekst bazadagi moddalardan (search_articles — to'liq matnli qidiruv + suhbat moddasi + matndagi "12-modda" havolalari).
Har javob ostida manba moddalar (havola) va "Bu yuridik maslahat emas"; shaxsiy ish bo'yicha — yuristga murojaat tavsiyasi.weak_articles (xato bor, o'zlashtirilmagan) → AI test (4-qism, test limitiga kiradi)./app/yordamchi/reja — maqsad (sertifikat/soha), sana, kunlik vaqt, daraja + zaif moddalar → 8 haftagacha reja./dev/ustoz?sahifa=bosh|suhbat|reja.startapp=j_<PIN>), har savolga 10–60 s,
ixtiyoriy guruh. Bepul — 30 ishtirokchigacha, Premium — 200. Bir hostda bitta faol xona./jonli — PIN va ism bilan qo'shilish (kirmaganlar ham, httpOnly token); bot /start j_<PIN>./jonli/host/<xona> — proyektor uchun ekran: ishtirokchilar, savol va taymer, javob berganlar soni, variantlar taqsimoti,
to'g'ri javob, top-5, yakuniy natijalar. /jonli/<xona> — o'quvchi ekrani (tanlov turida bir bosishda javob)./api/jonli/<xona> orqali olinadi; vaqt server soati bo'yicha; javob kaliti faqat "reveal" bosqichida.
Ball: to'g'ri — 500 + 500 × qolgan vaqt ulushi./dev/jonli?kim=host|oquvchi|kirish&holat=lobby|question|reveal|finished.Huquq fanidan milliy sertifikat imtihoniga tayyorgarlik platformasi — Next.js 16 + Supabase + Telegram.
Reja: ../HUQUQSHUNOSLIK KURSI/05_TEXNIK_ONLAYN_TIZIM/PLATFORMA_2.0_REJA.md
0-bosqich (poydevor) ✅
supabase/migrations) va boshlang'ich ma'lumot (supabase/seed.sql)1-bosqich (kontent va mashq) ✅
data/v1/REPORT.md2-bosqich (imtihon va takrorlash) ✅
3-bosqich (Premium va to'lov) ✅ — qo'lda to'lov
plans) va to'lov rekvizitlari admin paneldan o'zgartiriladi — narxlar: 1 oy — 49 000, 3 oy — 129 000 so'm/app/premium: bepul va Premium solishtirmasi, karta rekvizitlari, chek yuklash (JPG/PNG/WEBP/PDF ≤ 5 MB,
tur fayl baytlaridan tekshiriladi), to'lovlar tarixi va holatireceipts bucket'ida; admin 10 daqiqalik imzolangan havola orqali ko'radi/admin/tolovlar: tasdiqlash (obuna joriy muddat tugagan kundan uzaytiriladi) yoki sabab bilan rad etish/admin/sozlamalar: tarif narxlari, karta raqami (bo'sh bo'lsa — to'lov formasi yopiq)4-bosqich (Telegram bot va Mini App) ✅
/api/bot (maxfiy token bilan): /start (hisobni bog'lash), /kunlik, /natija, /sozlamalar, /yordam/tg): Telegram ichida bir bosishda kirish (initData imzosi + Origin tekshiruvi)5-bosqich (o'qituvchi paneli) ✅
/app/ustoz: guruh ochish, taklif havolasi (nusxalash / Telegram'da ulashish), o'quvchi chiqarish/app/qoshilish/<kod>: o'quvchi bir bosishda qo'shiladi6-bosqich (AI) ✅ — Claude Opus 5.5 (claude-opus-5-5), rad etilsa server tomonda fallbacks: "default"
/app/kontent: savol generatori (muallif manba matnini joylashtiradi) → qoralama → ekspert tasdiqlaydi;
shikoyatlarni ko'rib chiqish (to'g'ri shikoyat — savol muomaladan olinadi)ai_usage jadvaliga yoziladi (tokenlar, maqsad)ANTHROPIC_API_KEY qo'yilgach (hozircha soxta klient bilan testlangan)7-bosqich (motivatsiya) ✅
/app/reyting): haftalik va umumiy, viloyat bo'yicha; ball = aniqlik × 0,7 + faollik × 0,3;
faqat "Ali V." ko'rinishidagi ism, profilda reytingdan chiqish8-bosqich (kalibrlash) — vosita tayyor, real ma'lumot kutilmoqda
npm run db:calibrate: Rasch (JMLE) bilan savol qiyinligi, 10/18/7 toifalari, hisobot data/calibration/REPORT.md:
javob kaliti shubhali savollar (ajratish kuchi manfiy) va yorlig'i noto'g'ri savollar-- --apply (sinov imtihoni kalibrlangan toifalarni ishlatadi)Kontent sifati va PWA
/app/kontent/savollar: qidiruv, hujjat filtri, "javobi ko'zga tashlanadi" filtri; savolni tahrirlash
(versiya oshadi — qayta import ustidan yozmaydi; ikki ekspert bir vaqtda tahrirlasa — to'qnashuv aniqlanadi)data/v1/fixes.json, to'g'ri javob o'zgarmagan)Kurs o'quvchilarini ko'chirish: v1 da akkaunt yo'q edi (ism + telefon), shuning uchun avtomatik ko'chirilmaydi.
Tartib: o'zingizga admin panelda "O'qituvchi" rolini bering → /app/ustoz da "Femida Edu kurs" guruhini oching →
/admin/guruhlar da uni "Premium guruh" qiling → taklif havolasini kurs Telegram guruhiga tashlang.
Node.js ~/.local/node ga o'rnatilgan. Terminalda bir marta:
export PATH="$HOME/.local/node/bin:$PATH"
supabase.com → New project (region: Frankfurt eu-central-1 — O'zbekistonga eng yaqin).
Project Settings → API Keys dan URL, publishable va secret kalitlarni, Connect → Session pooler dan
DATABASE_URL ni oling.
.env.example ni .env.local ga nusxalab, qiymatlarni to'ldiring.
Sxema va boshlang'ich ma'lumot (qayta ishga tushirish xavfsiz — faqat yangi migratsiyalar qo'llanadi):
npm run db:migrate -- --seed
Authentication → Sign In / Providers → Email — o'chiring. Platforma faqat Telegram va Google orqali kiritadi; ochiq email ro'yxati begona Telegram hisobini oldindan egallashga urinish uchun ishlatilishi mumkin (kod bundan himoyalangan, lekin keraksiz eshikni yopib qo'ygan ma'qul).
@BotFather → /newbot → token va username'ni .env.local ga yozing.
/setdomain → saytning domeni (masalan femidaedu.uz). Widget localhost'da ishlamaydi — sinash uchun
Vercel preview domeni yoki ngrok tunnelidan foydalaning va NEXT_PUBLIC_SITE_URL ni shunga moslang.
Webhook va menyu (sayt HTTPS domenda ishga tushgach): .env.local ga TELEGRAM_WEBHOOK_SECRET
(openssl rand -hex 32) yozing, keyin npm run bot:setup (holatni ko'rish: npm run bot:setup -- info).
Vercel → Settings → Environment Variables: CRON_SECRET (openssl rand -hex 32) — eslatmalar vercel.json
dagi jadval bo'yicha (03:00 va 15:00 UTC = 08:00 va 20:00 Toshkent) ishlaydi.
https://<loyiha>.supabase.co/auth/v1/callbackNEXT_PUBLIC_SITE_URL qiymatihttp://localhost:3000/auth/callback, https://<domen>/auth/callbackKirgandan keyin Supabase SQL Editor'da:
update public.profiles set role = 'admin' where id = (select id from auth.users order by created_at limit 1);
Keyin /admin/sozlamalar da tarif narxlarini va to'lov qabul qilinadigan karta raqamini kiriting —
karta kiritilmaguncha /app/premium dagi to'lov formasi yopiq turadi.
.env.local ga DATABASE_URL qo'shing (Supabase → Connect → Session pooler satri, parol bilan), keyin:
npm run db:import
Import tranzaksiyada ishlaydi (xato bo'lsa hech narsa o'zgarmaydi) va qayta ishga tushirsa ham xavfsiz:
admin panelda tahrirlangan savollar (version > 1) qayta importda ustidan yozilmaydi.
v1 materiallari o'zgarsa, to'plamni qayta quring (../HUQUQSHUNOSLIK KURSI dan o'qiydi):
npm run import:build
npm install
npm run dev # http://localhost:3000 (Supabase'siz namunalar: /dev/savollar, /dev/imtihon, /dev/premium — faqat dev)
npm test # 234 ta test: RLS, import, mashq/imtihon SQL funksiyalari (PGlite), baholash, transliteratsiya
npm run typecheck
npm run lint
questions.answer, explanation) mijozga ochilmaydi — ustun GRANT'lari bilan yopilgan.
Javobni tekshirish va izohni qaytarish faqat serverda (createSupabaseAdmin), foydalanuvchi huquqi tekshirilgandan keyin.profiles.role, telegram_id, groups.grants_premium ni foydalanuvchi o'zi o'zgartira olmaydi.SUPABASE_SECRET_KEY va TELEGRAM_BOT_TOKEN faqat serverda; hech qachon NEXT_PUBLIC_ bilan boshlanmasin.tg_link cookie) —
begona imzoli havola orqali akkauntni egallashdan himoya.tests/db.test.ts ga RLS testi qo'shing.src/
proxy.ts sessiyani yangilash + yopiq bo'limlarga yo'naltirish (Next 16: middleware → proxy)
app/
page.tsx landing
kirish/ Telegram + Google
app/ o'quvchi kabineti (bosh sahifa, mashq, imtihon, takrorlash, premium, profil)
app/ustoz o'qituvchi paneli; app/qoshilish — guruhga qo'shilish
app/kontent kontent paneli: AI generator, tasdiqlash, shikoyatlar
admin/ admin panel: to'lovlar, sozlamalar
dev/ Supabase'siz namunalar (faqat dev)
api/auth/telegram/ widget qaytish manzili, bog'lash
api/auth/telegram-webapp Mini App orqali kirish
api/bot, api/cron bot webhook va eslatmalar
tg/ Mini App kirish sahifasi
auth/callback, chiqish Google OAuth, chiqish
lib/
questions.ts savol modeli va javobni tekshirish
grading-open.ts yozma javob (v1 mantiqi: sonlar so'zda, xatoga chidamli)
translit.ts lotin ↔ kirill
practice.ts mashq: javobni yozish (server)
mock.ts sinov rejasi, ball, daraja, tahlil (sof funksiyalar)
mock-server.ts sinovni boshlash / saqlash / baholash (server)
payments.ts, receipt.ts qo'lda to'lov: chekni tekshirish va yuklash
ai.ts, ai-server.ts Claude: qayta tekshirish, tushuntirish, savol generatori
telegram.ts Login Widget va Mini App imzosini tekshirish
bot/ Bot API klienti, buyruqlar, ommaviy xabar yuborish
auth-telegram.ts Telegram → Supabase foydalanuvchisi
auth.ts requireUser / requireRole
supabase/ server, brauzer va admin klientlar
scripts/import/ v1 → data/v1/bundle.json → SQL (build.ts, load.ts)
data/v1/ import to'plami va hisobot
supabase/
migrations/ sxema + RLS, mashq funksiyalari
seed.sql spetsifikatsiya bo'limlari, standart mock shabloni, nishonlar
tests/ vitest