University of Peradeniya crestSCS Documentation
University of Peradeniya crestSCS Documentation
Department website

Start here

Repository handbookRepository overviewDevelopment

System design

ArchitectureAuthentication and authorizationPublic dataAPI contractsSchemas
Schema referenceAcademic schemasPeople schemasCourse schemasResearch schemasProject schemasAPI transport schemas
UI system

Applications

Department Web applicationPeople applicationProjects applicationPortal application

Services

API serviceGitHub App serviceMailer service

Shared packages

Schemas packageUI packageTypeScript configuration packageESLint configuration package

Development workflow

Testing and verificationDependency managementDocumentation authoringUI quality assurance

Operations

Continuous integrationEnvironment variablesOperationsSecurityTroubleshooting

Reference

Route referenceGlossary
Schema reference

Public schemas for courses, offerings, staff assignments, and their canonical identifiers.

Course schemas

SchemaResponsibility
CourseCodeSchemaNormalized department-style course code.
CourseIdSchemaStable kebab-case course record identifier.
CourseSchemaCourse identity, codes, title, credits, and departments.
CourseOfferingIdSchemaStable kebab-case offering identifier.
CourseStaffSchemaAcademic username and teaching role assignment.
CourseOfferingSchemaCourse, academic year, semester, staff, and departments for one offering.

Course records are stable catalog entries. Offerings add time and staffing context without duplicating the course definition.

People schemas

Public schemas for identities, profile records, students, staff variants, social links, and search projections.

Research schemas

Public schemas for research activity, publications, and conferences embedded in people data.

On this page

Course schemas