Less integration.
More understanding.
A plain JSON file. Predictable fields. All the context a collection needs.
The sample manifest is publicly readable JSON. No API key is needed. There are no write endpoints, user accounts or server-side query parameters.
Read the collection.
The path is assets/manifest.json, relative to the site root. Open it directly or fetch it from a page on the same origin.
const response = await fetch('./assets/manifest.json');
if (!response.ok) throw new Error('Manifest unavailable');
const manifest = await response.json();
for (const asset of manifest.assets) {
console.log(asset.name, asset.version, asset.path);
}A small, explicit schema.
Collection fields
| Field | Type | Meaning |
|---|---|---|
schema_version | string | Version of the manifest format: 1.0. |
collection | string | Human-readable collection title. |
sample | boolean | True for this demonstration collection. |
license | string | CC0-1.0 for the included artwork. |
assets | array | The six asset records. |
Asset fields
| Field | Meaning |
|---|---|
id | Stable, lowercase, hyphen-separated identifier. |
name, description | Display name and intended visual content. |
kind, collection | Category and grouping used in the library. |
version | Three-part sample asset version. |
path | File path relative to the website root. |
media_type | File MIME type; image/svg+xml for these assets. |
width, height | Intrinsic dimensions in pixels. |
bytes | Exact size of the downloadable file. |
sha256 | Lowercase hexadecimal SHA-256 file digest. |
Check the file you received.
Hash the downloaded file and compare the result with its sha256 value in the manifest. On a system with the sha256sum utility:
sha256sum orbital-studies.svgIn Windows PowerShell:
Get-FileHash ./orbital-studies.svg -Algorithm SHA256A matching digest verifies that the file matches the manifest. It does not independently establish the publisher's identity or replace a review of an asset before using it.
Keep paths predictable.
The paths in the manifest are relative to the site root, not to the manifest file itself. Resolve them from the page root when fetching an asset:
const root = new URL('./', window.location.href);
const fileURL = new URL(manifest.assets[0].path, root);Download links return ordinary SVG files. Browser caching is controlled by the hosting server; this reference does not promise immutable URLs, CDN performance or a service-level agreement.