- Untrack .claude/launch.json (Claude Code config) - Add .claude/, .mcp.json, CLAUDE.md, and AI-generated CSVs to .gitignore - Add _notes/ vault (architecture, API, tasks, bugs, infra docs) - Add .obsidian/ plugin/vault config (workspace state excluded) - Sync CHANGELOG.md
789 B
789 B
State Management
Approach
Eventify uses Provider (^6.1.2) for state management.
Pattern
ChangeNotifierclasses hold stateChangeNotifierProviderexposes state to the widget treeConsumer<T>/context.watch<T>()rebuilds UI on state changecontext.read<T>()for one-off reads without subscribing
Key Providers
Fill in as you identify providers in
lib/core/andlib/features/
| Provider | Location | Responsibility |
|---|---|---|
| AuthProvider | lib/core/auth/ |
Session, login/logout |
| ThemeManager | lib/core/theme_manager.dart |
Dark/Light mode toggle |
Notes
- Desktop and mobile screens share the same providers via
responsive_layout.dart - Local persistence uses
shared_preferences(not Provider)