Skip to content

Extension points

tilttek/progression
PointWhat an application givesWhere
Store\ExperienceStore, Store\MilestoneStore, Store\StreakStoreThe storage of experience, milestones and streaks, in place of the stores in memoryWriting a store
Season\SeasonScheduleSeasons of its own, beside CalendarSeasons and NamedSeasonsSeasons
Streak\TimezoneResolverThe timezone a member's day is read inStreaks
ProgressionObserverWhat is done when a level changes, a milestone is reached or a streak breaksThe projection
Psr\Clock\ClockInterfaceThe clock the services read: the system's in production, a fixed one in testsTesting

Every point is passed to the constructor of the service that uses it; the services keep no state of their own between two calls.