Course Store
Component Detail
Data Layer
low complexity
mobile
0
Dependencies
3
Dependents
5
Entities
0
Integrations
Description
Local state management store using BLoC/Riverpod that caches course listings, user registration records, and enrollment status. Provides reactive state streams for UI updates and handles optimistic updates during registration submission.
course-store
Responsibilities
- Cache course listings and individual course details locally
- Store and emit current user registration states reactively
- Handle optimistic enrollment state updates with rollback on failure
- Persist last-fetched course data for offline reference
Interfaces
getCourses()
getCourseById(courseId)
setCourses(courses)
getUserRegistrations()
setRegistrationStatus(courseId, status)
addRegistration(registration)
removeRegistration(registrationId)
watchEnrollmentState(courseId)
clearCache()
Relationships
Dependents (3)
Components that depend on this component
Related Data Entities (5)
Data entities managed by this component