# Makelore learning contracts This package defines the small, dependency-free boundary between a downloaded course, the local Makelore player, and cloud learning services. A course is an immutable, unique product entity. It has a `courseId` and a `contentHash`; it does not have a user-visible version. `formatVersion` and `minPlayerVersion` are technical compatibility fields only.