ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗GeoLearn ta'lim platformasi uchun 3D elementlarga boy landing sahifa. Vue 3 + Vite + JavaScript + Tailwind CSS v4 + Three.js + GSAP ScrollTrigger + Lenis. Matnlar o'zbek (lotin) va rus tillarida, qorong'i va yorug' rejimlar bilan.
Talab: Node.js 20.19+ (yoki 22.12+).
npm install
npm run dev # http://localhost:5173
npm run build # tayyor sayt → dist/
npm run preview # build natijasini lokal ko'rish
Saytdagi barcha «Kirish», «Panelga kirish», «Ro'yxatdan o'tish» tugmalari bitta fayldan oladi:
src/config/links.js.
Domenni o'zgartirish uchun .env faylini tahrirlang (namuna — .env.example):
VITE_ADMIN_URL=https://admin.geolearn.uz # O'qituvchi paneli → /dashboard
VITE_USER_URL=https://student.geolearn.uz # O'quvchi portali → /login, /register
VITE_SITE_URL=https://geolearn.uz # Landingning o'z domeni (canonical, OG rasm)
Natija:
| Tugma | Havola |
|---|---|
| O'qituvchi paneli / Panelga kirish | ${VITE_ADMIN_URL}/dashboard |
| O'quvchi sifatida kirish / Kirish | ${VITE_USER_URL}/login |
| Ro'yxatdan o'tish | ${VITE_USER_URL}/register |
Barcha havolalar shu tabning o'zida ochiladi. Kartochka bosilganda qisqa «uchib kirish» animatsiyasi bo'ladi (Ctrl/Cmd + bosish — odatdagidek yangi tabda ochadi).
Vercel'da
.envo'rniga Settings → Environment Variables bo'limida ham berish mumkin — u yerdagi qiymatlar ustun turadi. O'zgartirgandan keyin qayta deploy qiling.
Hozir public/screens/ ichida namuna (placeholder) rasmlar turibdi — o'zingizning haqiqiy
skrinshotlaringizni xuddi shu nom bilan qo'ying:
| Fayl | Qayerda | Tavsiya etilgan o'lcham |
|---|---|---|
public/screens/admin.png | O'qituvchilar bo'limi, 3D noutbuk ekrani | 1600 × 1040 (16 : 10.4) |
public/screens/student.png | O'quvchilar bo'limi, 3D planshet ekrani | 1600 × 1200 (4 : 3) |
Rasm ekranni to'liq qoplaydi (object-fit: cover, yuqori-chap burchakdan), shuning uchun
nisbat biroz farq qilsa ham buzilmaydi. WebP ishlatmoqchi bo'lsangiz — fayl nomini
TeachersSection.vue / StudentsSection.vue dagi src qatorida ham almashtiring.
| Nima | Fayl |
|---|---|
| Barcha matnlar (UZ / RU) | src/i18n/uz.json, src/i18n/ru.json |
| FAQ savol-javoblari | src/content/faq.js (TODO belgili javoblarni to'ldiring) |
| Aloqa: Telegram, email, telefon | src/config/site.js |
| Xaritadagi yozuvlar (3D relyef) | src/content/geo.js |
| Brend ranglari | src/styles/main.css (:root va .dark) |
Til ?lang=ru parametri bilan ham ochiladi (masalan, https://geolearn.uz/?lang=ru).
| Sahna | Fayl |
|---|---|
| Hero: interaktiv Yer shari, O'rta Osiyo + Toshkent markeri, orbitadagi kartochkalar | components/three/HeroGlobe.vue, engine/heroGlobe.js, engine/earth.js |
| Skroll bilan O'rta Osiyoga «sho'ng'ish» → low-poly relyef xarita | components/sections/DiveSection.vue, engine/diveScene.js, engine/terrain.js |
| Imkoniyatlar: 7 ta aylanuvchi 3D ikonka (bitta canvas, scissor) | components/sections/FeaturesSection.vue, engine/featureIcons.js |
| AI yordamchi: shisha «orb» | components/sections/AiSection.vue, engine/aiOrb.js |
| Noutbuk / planshet / jonli o'yin paneli / rol kartochkalari | CSS 3D + GSAP (components/devices, components/role) |
Ishlash tezligi uchun:
import() qilinadi; ungacha skeleton yoki oldindan chizilgan statik rasm turadi.
Hero globusi birinchi harakatgacha (sichqoncha, skroll, teginish) yoki ~3.5 s gacha statik
rasm bilan turadi — sahifa tez ochiladi.[1, 2] (telefonda 1.5 gacha), teksturalar WebP/PNG, jami ~0.5 MB.src/composables/useDevice.js):
prefers-reduced-motion, Save-Data yoki juda kuchsiz qurilma:
3D o'rniga statik rasmlar, animatsiyalar o'chadi, sayt to'liq ishlaydi.?tier=full, ?tier=lite yoki ?tier=static qo'shing.index.html — title, description, canonical, hreflang (uz/ru), Open Graph, Twitter card, JSON-LD.public/og-image.png (1200 × 630), favicon.svg, apple-touch-icon.png, site.webmanifest.public/robots.txt va public/sitemap.xml ichidagi https://geolearn.uz ni o'z domeningizga
almashtiring (bu ikki fayl statik, .env dan o'qilmaydi).VITE_ADMIN_URL, VITE_USER_URL, VITE_SITE_URL.vercel.json SPA rewrite va kesh sarlavhalarini sozlaydi.Boshqa hostinglarda ham ishlaydi: npm run build → dist/ papkasini istalgan statik hostingga qo'ying.
src/
config/links.js ← portal havolalari (bitta joyda)
config/site.js ← aloqa ma'lumotlari, menyu
content/faq.js ← FAQ
content/geo.js ← xarita yozuvlari
i18n/uz.json, ru.json ← tarjimalar
components/
layout/ ← Header, Footer
sections/ ← sahifa bo'limlari (yuqoridan pastga)
three/ ← 3D komponentlar
three/engine/ ← three.js sahnalari (lazy chunk)
devices/, role/, ui/ ← noutbuk/planshet, rol kartochkalari, UI elementlar
composables/ ← tema, qurilma darajasi, skroll, tilt, lazy 3D
public/
textures/, geo/ ← Yer teksturalari, O'rta Osiyo relyef ma'lumotlari
images/ ← statik fallback rasmlar, kontur chiziqlar
screens/ ← dashboard skrinshotlari (almashtiring)
@fontsource-variable/inter.