Collections are the basic storage mechanism in Slingshot. A collection is a named set of documents (records) of the same type. A blog system, for instance, might have collections called "posts" and "comments", while a CRM might have collections called "customers" and "opportunities".

By convention, collection names are plural, lowercase, and kebab-cased (words with dashes separating them). "team-members" is a recommended collection name, while "Team-members", "team members", and "team-member" are not.

Schema

Each collection is typically described by a schema (this is not necessary if you're not using Slingshot's built-in UI, but is recommended). The schema is a JSON Document describing fields and relationships. Slingshot does NOT use JSONSchema; instead the system uses a home- grown schema optimized for clarity, brevity, and version control merge conflict resolutions, which also allows us to distribute changes as patch files.

Fields

Arrays

Structs (Objects)

Relationships