Commit Graph
60 Commits
Author SHA1 Message Date
maxiwere45 b12739af09 Merge: split system_page into sub-widgets (<150 lines) 2026-06-23 11:51:15 +02:00
maxiwere45andClaude Opus 4.8 749314d312 refactor(system): extract system_page sub-widgets into separate files (<150 lines)
Move SystemHeader, SectionTitle, StatsGrid/StatItem and PalettePicker into
widgets/system/. system_page.dart 260 -> 80 lines.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 11:51:15 +02:00
maxiwere45 dd33885bda Merge: split pokemon_detail into sub-widgets (<150 lines) 2026-06-23 11:49:19 +02:00
maxiwere45andClaude Opus 4.8 41a80f03f0 refactor(detail): split pokemon_detail into sub-widgets (<150 lines)
Extract PokemonDetailTop and PokemonStatsPanel (+ reusable _StatBar).
pokemon_detail.dart 286 -> 97 lines.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 11:49:19 +02:00
maxiwere45 93e3fa76c8 Merge: split game_over_page into sub-widgets (<150 lines) 2026-06-23 11:47:08 +02:00
maxiwere45andClaude Opus 4.8 bdbd2fcc6a refactor(game-over): split game_over_page into sub-widgets (<150 lines)
Extract GameOverHeader, GameOverStats (+ reusable _StatBox), HingeDivider,
GameOverActions. game_over_page.dart 338 -> 100 lines.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 11:47:08 +02:00
maxiwere45 2f0d7e1e36 Merge: split guess_page into sub-widgets (<150 lines) 2026-06-23 11:44:55 +02:00
maxiwere45andClaude Opus 4.8 cb9e214aa2 refactor(guess): split guess_page into focused sub-widgets (<150 lines)
Extract GuessSilhouette, GenFilterSection, LivesRow, GuessInputSection,
ScoreBoard and a shared ScanlineOverlay. guess_page.dart 440 -> 149 lines.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 11:44:55 +02:00
maxiwere45 d12b01b4ab chore: add documents 2026-06-23 11:36:13 +02:00
maxiwere45 1b9618de84 Merge branch 'pokeguess-preview' 2026-06-23 11:34:23 +02:00
maxiwere45andClaude Opus 4.8 d54e517ca6 chore(core): remove unused Result type (dead code)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 15:33:51 +02:00
maxiwere45andClaude Opus 4.8 43b68d1352 docs: update architecture documentation for new layered design
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 15:24:33 +02:00
maxiwere45andClaude Opus 4.8 5c9cef99a7 test: fix default widget smoke test for new architecture
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 15:24:05 +02:00
maxiwere45andClaude Opus 4.8 ca77317a20 chore: remove legacy models/utils/api/database layers
Also moves stray lib/pages/quel-est-ce-pokemon.code-workspace to repo
root, and fixes two trivial test lint infos (curly_braces_in_flow_
control_structures, constant_identifier_names) to reach clean analyze.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 15:20:54 +02:00
maxiwere45andClaude Opus 4.8 dc7e681508 fix(presentation): recover from game-over back gesture, show final score, guard hint, constants
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 15:15:27 +02:00
maxiwere45andClaude Opus 4.8 e62c8a9034 refactor: wire main.dart to presentation layer
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:45:59 +02:00
maxiwere45andClaude Opus 4.8 2c21b80a03 refactor(presentation): guess page consumes gameProvider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:45:20 +02:00
maxiwere45andClaude Opus 4.8 4ac13bd233 refactor(presentation): game over page uses repository + constant
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:43:48 +02:00
maxiwere45andClaude Opus 4.8 7fd6d16020 refactor(presentation): pokemon list consumes pokedexProvider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:43:02 +02:00
maxiwere45andClaude Opus 4.8 d4c8936c80 refactor(presentation): main page as ConsumerWidget with nav provider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:42:13 +02:00
maxiwere45andClaude Opus 4.8 439c0101f4 refactor: move UI into presentation/widgets and presentation/pages
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:41:41 +02:00
maxiwere45andClaude Opus 4.8 29d2c92b37 fix(presentation): resilient pokemon loading, web-safe invalidate, correct best-score persist
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:38:40 +02:00
maxiwere45andClaude Opus 4.8 4bca4b1ed5 feat(presentation): add game state Notifier
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:31:42 +02:00
maxiwere45andClaude Opus 4.8 2d87879af8 feat(presentation): add selected-tab navigation provider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:31:16 +02:00
maxiwere45andClaude Opus 4.8 d531fcb2c8 feat(presentation): add pokedex AsyncNotifier provider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:30:55 +02:00
maxiwere45andClaude Opus 4.8 f6a6ba2cd1 feat(presentation): add repository DI provider
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:30:30 +02:00
maxiwere45andClaude Opus 4.8 e2e310cae5 test(domain): cover skip bonus and invalid-guess paths in GameEngine
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:29:03 +02:00
maxiwere45andClaude Opus 4.8 e3a9831ce1 feat(domain): add pure GameEngine with TDD (removes pikachu cheat)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:22:03 +02:00
maxiwere45andClaude Opus 4.8 0d977e5cca feat(domain): add immutable GameState
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:20:46 +02:00
maxiwere45 4bc3948fed feat(gitignore): add .claude/ to ignore list 2026-06-09 11:19:20 +02:00
maxiwere45andClaude Opus 4.8 6885771081 fix(data): race-safe DB open, graceful unknown types, explicit id error + fallback tests
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:18:56 +02:00
maxiwere45andClaude Opus 4.8 51c6ef904d feat(data): add PokemonRepository implementation + tests
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:13:06 +02:00
maxiwere45andClaude Opus 4.8 42bd9f7c20 feat(domain): add PokemonRepository interface
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:12:05 +02:00
maxiwere45andClaude Opus 4.8 cbc742b25a feat(data): add HTTP remote datasource
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:11:31 +02:00
maxiwere45andClaude Opus 4.8 96758f1b6b feat(data): add instance-based SQLite local datasource
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:10:25 +02:00
maxiwere45andClaude Opus 4.8 f2dcba0fe2 feat(data): add PokemonDto with single-source JSON parsing + tests
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 11:09:51 +02:00
maxiwere45andClaude Opus 4.8 2f051c8da6 refactor: point leaf components at domain Pokemon entity
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:57:51 +02:00
maxiwere45andClaude Opus 4.8 b1f67d3daa feat(presentation): add type colors helper
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:57:23 +02:00
maxiwere45andClaude Opus 4.8 8ca6405bc0 feat(domain): add pure Pokemon entity and PokemonType enum
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:56:59 +02:00
maxiwere45andClaude Opus 4.8 8f29f3578a refactor(core): keep logger pure-Dart and document Result subtypes
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:55:36 +02:00
maxiwere45andClaude Opus 4.8 2a3f489a2d feat(core): add AppLogger
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:50:31 +02:00
maxiwere45andClaude Opus 4.8 6b150945fa feat(core): add sealed Result type
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:50:16 +02:00
maxiwere45andClaude Opus 4.8 03dbdd723d feat(core): add centralized app constants
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:49:51 +02:00
maxiwere45andClaude Opus 4.8 ca769dca2d chore: add flutter_riverpod and wrap app in ProviderScope
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:48:53 +02:00
maxiwere45andClaude Opus 4.8 6f81384a06 chore: gitignore local superpowers docs
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 10:39:29 +02:00
maxiwere45 4faf259aaa feat: Introduce PokemonImage component for robust image loading with fallback and shiny support, and update iOS platform to 15.0. 2026-03-20 11:23:22 +01:00
maxiwere45 6592b35755 docs: Add initial project README and architecture documentation. 2026-03-17 16:05:17 +01:00
maxiwere45 112d0136c9 feat: Implement batch insertion for Pokémon and utilize it for more efficient initial data synchronization. 2026-03-17 15:09:41 +01:00
maxiwere45 fbf37e6861 chore: major changes 2026-03-17 14:57:39 +01:00
maxiwere45 528cdcafef init v2 app 2026-03-17 13:26:21 +01:00
maxiwere45 5f75c53866 fix: test broken 2026-02-03 14:38:20 +01:00
maxiwere45 e18863cf1c feat: add frenchTypeToEnum function to map French Pokémon types to enums 2026-02-03 09:47:21 +01:00
maxiwere45 5bd3b1f18f fix: update image URLs to use TyraDex for Pokémon sprites 2026-02-03 09:47:15 +01:00
maxiwere45 5b1ffaede8 fix: update Pokemon API integration to use Tyradex and improve type handling 2026-02-03 09:46:51 +01:00
maxiwere45 c7be5241a2 fix: remove unused sqflite_common import in main.dart 2026-02-03 09:46:41 +01:00
maxiwere45 f11e3f7b63 chore: update Podfile.lock to include sqflite_darwin and sqlite3_flutter_libs dependencies 2026-02-03 09:46:34 +01:00
maxiwere45 93cfaff7df refactor: update application name and description to 'Pokéguess' 2026-02-02 09:42:07 +01:00
maxiwere45 c19c543684 chore: update project configuration and dependencies (iOS) 2026-02-02 09:12:28 +01:00
maxiwere45 17459378d9 fix: improve formatting in README.md 2026-02-02 09:12:15 +01:00
maxiwere45 495d33bb7c chore: update iOS configs 2026-02-02 08:44:09 +01:00