ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
🐱 Digi-Pet
A Gamified Coding Education Platform
Digi-Pet is an interactive educational platform designed to make coding practice more engaging, structured, and rewarding.
Inspired by progression systems from MMORPG games and LeetCode-style coding challenges, Digi-Pet combines guided learning paths, gamification, AI-powered feedback, and an interactive digital cat companion. The goal is to encourage consistent daily learning while making technical education feel more like an adventure than an obligation.檢視完整 README ↗Digi-Pet is an interactive educational platform designed to make coding practice more engaging, structured, and rewarding.
Inspired by progression systems from MMORPG games and LeetCode-style coding challenges, Digi-Pet combines guided learning paths, gamification, AI-powered feedback, and an interactive digital cat companion. The goal is to encourage consistent daily learning while making technical education feel more like an adventure than an obligation.
Many aspiring software engineers struggle to maintain consistent coding practice because traditional platforms can feel overwhelming, repetitive, and difficult to navigate.
Common challenges include:
Digi-Pet addresses these challenges through structured learning, gamified progress, and a companion that keeps practice visible and encouraging.
Digi-Pet combines education, motivation, and progression in one experience:
| Page | Purpose | Current Features |
|---|---|---|
| Learn | Users explore educational topics, review lessons, study examples, and complete practice exercises. | Topic cards, concept levels, examples, and practice exercises connected to the Challenge page. |
| Map | An interactive adventure map containing themed learning worlds. Each world represents a learning topic. | Select worlds, view eight-segment progression wheels, track completed challenges, zoom into selected worlds, browse grouped problem lists, and navigate directly to problems. Each map topic uses 8 problems organized as 3 Easy, 3 Medium, and 2 Hard. |
| Challenge | Users solve coding and educational challenges. | Code editor, generated LeetCode-style starter code, language/version selector, code execution, expected output checking, answer submission, AI-assisted evaluation, completion tracking, and pet celebrations. |
| Dashboard | Users monitor their learning progress. | Completed challenge analytics, daily streaks, XP, activity heatmap, score trends, subject breakdowns, achievements and milestones, weak spots, and digital pet status. |
The Challenge page currently supports code execution through Judge0-compatible runtimes for JavaScript, TypeScript, Python, C, C++, Java, Go, Rust, React/JSX, C#, Kotlin, PHP, and Ruby. Coding problems are checked against expected output, while written-answer problems are evaluated through the AI feedback endpoint.
Digi-Pet features an animated virtual cat that acts as a learning companion and encourages users to practice consistently.
Implemented companion features include:
The cat is available inside the Digi-Pet website and can also be injected into supported websites through the Chrome Extension.
The Chrome Extension brings the Digi-Pet companion outside the website so learners can stay connected to their study habit while browsing the internet.
Implemented extension functionality includes:
http:// and https:// websiteschrome.storage.localChrome does not allow content scripts on every page. The extension cannot inject the cat into Chrome internal pages, the Chrome Web Store, or other protected browser pages.
From the web/ directory:
npm install
npm run extension:build
Then:
chrome://extensions.web/extension-dist folder.https://example.com to verify the cat appears.| Technology | Purpose |
|---|---|
| React | Website UI and Chrome Extension content UI |
| TypeScript | Type-safe website and extension development |
| Vite | Website, extension, and desktop prototype build tooling |
| Node.js | Backend runtime for local API development |
| Express | API routes for code execution, answer checking, and pet chat |
| Google Gemini | AI-assisted answer evaluation, pet chat, and answer summarization |
| Judge0-compatible API | Multi-language code execution and expected-output checking |
| Supabase | Optional user progress storage and synchronization |
| Chrome Extension / Manifest V3 | Browser-based digital companion and reminders |
| Electron | Separate desktop cat prototype in app/ |
| Vercel | Website deployment and serverless API routing |
Electron is a separate desktop prototype, not the primary website framework.
Digi-Pet/
|-- app/
| |-- electron/
| |-- src/
| |-- index.html
| |-- package.json
| `-- vite.config.mjs
|-- web/
| |-- api/
| |-- extension/
| |-- extension-dist/
| |-- public/
| |-- scripts/
| |-- server/
| |-- src/
| |-- supabase/
| |-- index.html
| |-- package.json
| |-- tsconfig.json
| |-- vercel.json
| `-- vite.config.ts
`-- README.md
web/ - React + TypeScript website, learning pages, challenge services, backend API, Chrome Extension source, Supabase integration, and deployment config.web/src/pages/ - Main application screens: Learn, Map, Challenge, Dashboard, and Topic Detail.web/src/components/ - Reusable UI components for layout, dashboard panels, learning tools, problem cards, and the digital pet.web/src/data/ - Topic data, learning content, code runtime definitions, and generated coding challenge specs.web/src/services/ - API clients, progress tracking, dashboard statistics, Supabase integration, reminders, and pet celebration events.web/server/ and web/api/ - Express API implementation and Vercel serverless entrypoint.web/extension/ - Chrome Extension source, manifest, background worker, and Vite extension build config.web/extension-dist/ - Built unpacked Chrome Extension output.app/ - Electron desktop cat prototype.README.md - Main project documentation.Digi-Pet creates a continuous learning loop:
Together, these pieces make coding practice feel more structured, visible, and rewarding.
Clone the repository:
git clone https://github.com/aphan135/Digi-Pet.git
cd Digi-Pet/web
Install dependencies:
npm install
Create a local environment file:
cp .env.example .env
Configure .env with your own values:
GEMINI_API_KEY=your_gemini_api_key
GEMINI_MODEL=gemini-2.5-flash
API_PORT=3001
JUDGE0_API_URL=https://ce.judge0.com
JUDGE0_AUTH_TOKEN=
VITE_SUPABASE_URL=
VITE_SUPABASE_ANON_KEY=
Do not commit real API keys or secrets.
Start the local website and API server:
npm run dev
Other available website commands:
npm run dev:web
npm run dev:api
npm run build
npm run preview
npm run extension:build
The separate Electron desktop prototype lives in app/:
cd ../app
npm install
npm run dev
Available desktop prototype commands:
npm run dev
npm run build
npm run start
Potential improvements include:
These items are planned improvements and should be distinguished from the implemented features listed above.
Digi-Pet aims to:
Our vision is to make coding practice feel less like homework and more like an adventure.