ClassKit lets educational apps on iOS, macOS, and visionOS expose their learning activities and report student progress to the Schoolwork app. You structure your app's assignable content as a hierarchy of CLSContext objects, declaring each context's kind through CLSContextType and its subject with CLSContextTopic. When a student works through that content, you create a CLSActivity and attach result items such as CLSScoreItem, CLSQuantityItem, and CLSBinaryItem to record outcomes. The CLSDataStore, together with CLSContextProvider and CLSDataStoreDelegate, persists and supplies these contexts and activities so teachers can review progress.
Essentials 2
The base type and data store that anchor a ClassKit integration.
- ClCLSObjectiOS 11.3+@abstract An object managed by ClassKit.
- ClCLSDataStoreiOS 11.3+@abstract The data store maintains and syncs your app's contexts.
Structuring Assignable Content 3
Contexts model your app's learning content as an assignable hierarchy.
- ClCLSContextiOS 11.3+@abstract Contexts represent activities, documents, and areas within your app.
- EnCLSContextTypeiOS 11.3+Constants that specify the kind of learning content a context represents.
- StCLSContextTopiciOS 11.3+A structure whose values identify the academic subject a context covers.
Recording Student Activity 6
Activities and result items capture what a student did and the outcomes they achieved.
- ClCLSActivityiOS 11.3+@abstract CLSActivity represents user generated activity data for a given context.
- ClCLSActivityItemiOS 11.3+@abstract CLSActivityItem is used to gather information about the activity generated by a user.
- ClCLSScoreItemiOS 11.3+@abstract CLSScoreItem represents user generated score information.
- ClCLSQuantityItemiOS 11.3+@abstract CLSQuantityItem represents user generated quantity information.
- ClCLSBinaryItemiOS 11.3+@abstract CLSBinaryItem represents user generated information that is true or false, pass or fail, yes or no.
- EnCLSBinaryValueTypeiOS 11.3+Constants that specify how a binary item's true and false values are interpreted.
Supplying and Reporting Progress 3
Protocols and capabilities that provide contexts to the data store and advertise progress reporting.
- PrCLSContextProvideriOS 12.2+@abstract The CLSContext provider protocol.
- PrCLSDataStoreDelegateiOS 11.3+A protocol that supplies missing parent contexts as the data store builds its hierarchy.
- ClCLSProgressReportingCapabilityiOS 14+@abstract This class specifies progress reporting capability of a ClassKit client app
Querying Contexts 1
Key paths used to build predicates that locate contexts in the data store.
- StCLSPredicateKeyPathiOS 11.3+A structure of key paths used to construct predicates that fetch contexts.
Errors 2
The error type and keys ClassKit reports when an operation fails.
- StCLSErroriOS 11.3+A structure that describes errors encountered while working with ClassKit.
- StCLSErrorUserInfoKeyiOS 11.3+Constants that identify values in the user info dictionary of a ClassKit error.