data is the canonical multi-university campus-data, provenance, and reuse surface of the Gapwise product ecosystem. It owns campus-scoped facts and geometry across all supported Canadian university campuses; it does not redefine deterministic product calculations or public API behavior.
The repository contains source-backed building identity and map geometry for 14 universities and 16 campus models. Entrance and pedestrian routing evidence is campus-specific, retains explicit provenance, and preserves unknown accessibility or access state rather than promoting it to verified fact.
| Surface | Canonical location | Relationship to Gapwise Data |
|---|---|---|
| Student web/PWA + public API + SDK source | GapwiseHQ/gapwise |
vendors a validated campus-data snapshot and owns deterministic routing/gap-planning behavior plus public API/SDK contracts |
| Native Android | GapwiseHQ/android |
consumes Gapwise product/API contracts; it must not maintain a parallel campus dataset |
| Native iOS | GapwiseHQ/ios |
consumes Gapwise product/API contracts; it must not maintain a parallel campus dataset |
| AI/MCP | GapwiseHQ/ai |
exposes deterministic Gapwise campus semantics through MCP and delegated context; it is not a data-authority replacement |
| Developer docs | GapwiseHQ/docs |
documents released API/SDK contracts and links raw data/provenance back here |
| Status | GapwiseHQ/status |
monitors public service health independently and does not depend on raw campus data for routing semantics |
- API:
https://api.gapwise.ca/v1 - OpenAPI:
https://api.gapwise.ca/openapi.json - TypeScript SDK:
@gapwise/sdk- npm
0.1.2is published with provenance - JSR
0.1.2is published with provenance through GitHub Actions OIDC - one portable TypeScript implementation targets Node, Bun, Deno, and browser consumers rather than separate runtime SDKs
- npm
- Python SDK:
gapwise==0.1.1is published on PyPI through Trusted Publishing - Android source:
https://github.com/GapwiseHQ/android - iOS source:
https://github.com/GapwiseHQ/ios - Docs:
https://docs.gapwise.ca - Data:
https://data.gapwise.ca - AI/MCP:
https://ai.gapwise.ca/api/mcp - Status:
https://status.gapwise.ca
TypeScript and Python are equal first-party SDK implementations. Applications should normally consume the stable API/SDK contract rather than importing raw repository data unless they specifically need source-level provenance or geometry.
- Canonical campus records originate in their university-scoped directories under
universities/in this repository; the reviewed UTM entrance/routing pipeline lives indata/utm. gapwise/src/data/utmis a checked-in compatibility mirror, validated byte-for-byte in CI; it is not a second authority.- Public API and SDK behavior follows OpenAPI and the core implementation; this repository owns facts/evidence, not API semantics.
- Unknown/inferred/approximate/unverified states remain explicit in data and downstream representations.
- Upstream attribution and ODbL obligations remain attached to data even when consuming Gapwise code is MIT licensed.
- Production routing must not depend on
data.gapwise.caor GitHub being reachable at request time. - Android and iOS must consume canonical campus/product contracts rather than silently growing independent campus datasets.
- A schema/data-version change should trigger review of core API/SDK output, developer docs, native consumers, AI grounding, and relevant status probes.
When canonical campus data changes, check whether the change affects:
- the
gapwisevendored mirror and deterministic route/gap outputs; - TypeScript and Python public models/examples;
docsdata/provenance/API pages;androidbehavior exposed through stable contracts;iosbehavior exposed through stable contracts;aigrounded public campus tools;statusmonitored data/API endpoints.
The ecosystem is intentionally interconnected, but ownership stays explicit: Data owns public campus facts; Core owns deterministic calculations/contracts; Docs explains releases; Android and iOS consume; AI exposes bounded context; Status communicates health.