Capsium

Specifications

The Capsium package format

Capsium provides a common architecture for portable, secure information interchange and unified management. These are the core specifications.

Structure

What a package contains

A Capsium package typically includes five parts:

Content

Static files like HTML, CSS, and JavaScript — the payload a reactor serves.

Data

Structured data files, such as YAML or JSON, exposed as datasets.

Metadata

Descriptive information about the package: name, version, and dependencies.

Routes

Mapping of URLs to content or data endpoints.

Storage

Definitions for datasets and their sources, formats, and schemas.

Configuration

Configured with JSON

Capsium packages are configured using JSON files covering metadata, routes, storage, and security. You author metadata.json; the packager generates the rest.

  • Identity — name, version, description, guid, and uuid pin down exactly what the package is.
  • Provenance — license and repository record where the package comes from.
  • Dependencies — declared with version constraints, resolved by reactors.
  • readOnly — marks the package as immutable once packed.

metadata.json

{
  "name": "my-site",
  "version": "0.1.0",
  "description": "A sample Capsium package",
  "guid": "com.example.my-site",
  "uuid": "3f6b0d2a-9c4e-4b1a-8e7d-2c5f9a1b0e3d",
  "license": "MIT",
  "repository": "https://github.com/example/my-site",
  "dependencies": {
    "com.example.shared-assets": "^1.2.0"
  },
  "readOnly": true
}

Editor autocomplete and CI validation: JSON Schemas (draft 2020-12) for every configuration file live at /schemas/ — metadata, manifest, routes, storage, security, authentication.

Security

Every file in a package is fingerprinted with a SHA-256 checksum recorded in security.json. Packages can additionally carry RSA digital signatures, so reactors can verify both integrity and origin before serving anything.

File format

A Capsium package is a ZIP archive with the .cap extension and the registered MIME type application/vnd.capsium.package. Any standards-compliant ZIP tool can inspect one.

Deployment

Capsium packages are deployed using a Capsium reactor, which reads the package configuration and serves the content and data according to the defined routes — verify first, then mount.

The full standard

These pages summarize the format. The normative text is the CC 62001 standard — read it here, or watch it evolve in the open.