ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Dragon-powered math games that are actually fun! A collection of four math mini-games wrapped in a whimsical dragon fantasy world, built with Flutter.
Step 10 complete — Firebase integration with anonymous auth, optional Google Sign-In, offline-first Firestore cloud sync, conflict resolution, and backup prompt system.
MathDragonsGame, event types, reward config)url_launcher opens the system browserlib/core/founding_tester.dart, app_meta box) so beta families can get the paid unlock free at full release; nothing leaves the deviceINTERNET permission (the app makes no network calls)flutter analyze passes cleanflutter test passes — all greenflutter build apk --debug succeeds| Game | Theme | Math Skills | Status |
|---|---|---|---|
| Dragon Runes | Ancient rune puzzles | Equation building, all 4 operations | Playable |
| Fire Trail | Dragon flight | Mental math under time pressure | Playable |
| Dragon Eggs | Egg hatching | Equation assembly from falling eggs | Playable |
| Dragon's Feast | Treasure feast | Number properties, categorization | Playable |
scoop bucket add extras
scoop install extras/flutter
Verify installation:
flutter --version
flutter doctor
cd math_dragons
flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter gen-l10n
flutter analyze
This should report no issues.
flutter test
All 535 tests should pass.
flutter build apk --debug
The APK will be at build/app/outputs/flutter-apk/app-debug.apk.
# List available devices
flutter devices
# Run on the default device
flutter run
# Run on a specific device
flutter run -d <device-id>
math_dragons/
├── lib/
│ ├── main.dart # App entry point (initializes Hive, runs app)
│ ├── app.dart # StatefulWidget with MultiProvider + lifecycle
│ ├── core/
│ │ ├── game_interface.dart # MathDragonsGame contract
│ │ ├── game_events.dart # Sealed GameEvent types
│ │ ├── game_registry.dart # Game discovery + sorted queries
│ │ ├── event_bus.dart # Stream-based typed pub/sub
│ │ ├── player_profile.dart # PlayerProfile, GameStats, PlayerSettings (Hive)
│ │ ├── reward_service.dart # Scales earning logic + EventBus listener
│ │ ├── fact_tracker.dart # FactRecord model + tracking service
│ │ ├── session_manager.dart # App/game session tracking
│ │ ├── haptics.dart # Named haptic patterns
│ │ ├── difficulty_engine.dart# Adaptive difficulty engine
│ │ ├── progression_manager.dart # Dragon evolution + XP system
│ │ ├── achievement.dart # Achievement data model + 52 definitions
│ │ ├── achievement_tracker.dart # EventBus listener + unlock logic
│ │ ├── daily_challenge.dart # Daily challenge data model
│ │ └── daily_challenge_manager.dart # Challenge generation + tracking
│ ├── storage/
│ │ ├── local_storage.dart # Hive wrapper (profiles, facts, meta)
│ │ ├── migration.dart # Schema migration runner (v2)
│ │ ├── cloud_sync.dart # Offline-first Firestore sync manager
│ │ ├── sync_resolver.dart # Conflict resolution (max/union/merge)
│ │ └── connectivity_monitor.dart # Network state monitoring + auto-retry
│ ├── auth/
│ │ ├── auth_service.dart # Firebase Auth wrapper (anonymous + Google)
│ │ ├── anonymous_auth.dart # UID ↔ PlayerProfile linkage manager
│ │ └── account_upgrade.dart # Google Sign-In upgrade flow
│ ├── hub/ # Hub screen, game cards, profile bar, settings
│ ├── dev/ # Debug-only internal tooling (accessory calibration)
│ ├── navigation/ # Custom page route transitions
│ ├── games/
│ │ ├── shared/ # Game shell, result screen, shared components
│ │ │ └── problem_generation.dart # Curriculum components, mastery estimates, scheduler, validators
│ │ ├── dragon_runes/ # Number Links port (Flame game)
│ │ │ ├── components/ # Rune nodes, connection line, particles, hints
│ │ │ ├── models/ # RuneNodeData, EquationTarget, config, equations
│ │ │ ├── systems/ # Chain manager, equation validator, level generator, scoring, hints
│ │ │ └── widgets/ # Target panel, chain display, hint button, score display
│ │ ├── fire_trail/ # Math Snake port (Flame game)
│ │ │ ├── components/ # Dragon head, trail segments, gems, grid, sparkles
│ │ │ ├── models/ # GridPosition, Direction, FlameIntensity, config
│ │ │ ├── systems/ # Movement, problem generation, trail management
│ │ │ └── widgets/ # D-pad, flame meter, problem display, countdown
│ │ ├── dragon_eggs/ # Bubble Pop port (Flame game)
│ │ │ ├── components/ # Eggs, danger line, equation, toast, sparkle
│ │ │ └── models/ # Egg data, difficulty, math problems, scoring
│ │ └── dragons_feast/ # Merged Muncher port (Flame game)
│ │ ├── components/ # Grid, tiles, dragon, enemies, power-ups, effects
│ │ ├── models/ # GridCell, MathCategory, EnemyType, FeastConfig
│ │ ├── systems/ # Category system, board generator, enemy AI, power-ups, collision
│ │ └── widgets/ # Category display, lives, score, D-pad, transitions
│ ├── monetization/
│ │ └── store_screen.dart # Cosmetics store (scales purchasing)
│ ├── widgets/
│ │ ├── achievement_popup.dart # Slide-down achievement notification
│ │ ├── animated_scales_counter.dart # Animated counter with particles
│ │ └── cosmetic_preview.dart # Dragon cosmetic display widget
│ ├── rewards/ # Palace builder (v2 stub)
│ ├── l10n/ # Localization (ARB + generated)
│ └── theme/ # Colors, typography, spacing
├── assets/
│ ├── fonts/ # Cinzel, Nunito, JetBrains Mono
│ ├── images/ # Dragons, hub, games, UI (placeholders)
│ ├── animations/ # Rive/Lottie files (placeholder)
│ └── sounds/ # Music + SFX (placeholder)
├── test/
│ ├── core/ # Unit tests for models and services
│ ├── storage/ # Storage/migration tests
│ ├── hub/ # Hub widget unit tests (profile bar, etc.)
│ ├── navigation/ # Route mapping tests
│ ├── games/shared/ # Game shell and result screen tests
│ ├── games/dragon_eggs/ # Dragon Eggs game tests (75 tests)
│ ├── games/fire_trail/ # Fire Trail game tests (69 tests)
│ ├── games/dragon_runes/ # Dragon Runes game tests (61 tests)
│ ├── games/dragons_feast/ # Dragon's Feast game tests (90 tests)
│ ├── monetization/ # Store screen tests
│ └── integration/ # Integration tests (placeholder)
├── docs/ # Planning documents, including MATH_PROBLEM_GENERATION_DESIGN.md
└── pubspec.yaml
| typeId | Class | File |
|---|---|---|
| 0 | PlayerProfile | core/player_profile.dart |
| 1 | GameStats | core/player_profile.dart |
| 2 | PlayerSettings | core/player_profile.dart |
| 3 | FactRecord | core/fact_tracker.dart |
| 4 | FactStatus (enum) | core/fact_tracker.dart |
| 5 | UnlockedAchievement | core/achievement.dart |
| 6 | DailyChallengeState | core/daily_challenge.dart |
The app no longer contains any Firebase code or packages (verified 2026-10-19). It is fully offline, has no accounts, and collects no data. Leftover Firebase project files (firebase.json, firestore.rules) and the unused firebaseUid/linkedProvider profile fields remain only for history and existing installs; they are not used.
start ms-settings:developers.dart run build_runner build --delete-conflicting-outputs to regenerate adapters.flutter gen-l10n to regenerate localization classes.