-
Notifications
You must be signed in to change notification settings - Fork 5
4. Manifest Document Format
Manifest is not only a visualization platform, it is a document format for describing supply chains, trade networks, and other logistical structures. Manifest documents are JSON files that correspond to the Manifest Document format. They can be created by hand, or in the Manifest editor.

- Manifest Overview - All Manifest documents contain some basic overview information, including a name and a description.
- Location - Manifest documents can also contain a location. This location is associated with the document as a whole (for example, Manifests of products might like the iPhone might use the location for the designing firm--in this case, Apple in Cupertino, California.
- Node List - Manifest documents are primarily a list of Nodes. This nodes presents sites, suppliers, parts, and similar divisions of the supply chain. Each document could have an arbitrary number of nodes.
- Nodes - Each node contains information like an overview that includes names, descriptions, and similar details; locations, the address that geographically represents the node; lists of: other nodes that node is connected to, categorizations for the node, quantitative measures for the node, images associated with the node, and sources for the information about the node.
- Notes - Manifest documents an also contain additional notes that will not be used by the Manifest web app.
- Key-Value Pairs - Manifest documents can also contain an arbitrary number of key-value pairs that will not be used by the Manifest web app.
- Meta Info - Manifest documents can also contain meta information used by the Manifest web app (describing preferred styling and similar sorts of information).
-
Special Measures - Manifest treats some measures differently, enabling additional functionality or formatting them in special ways. This is a list of the current special measure types, values, and units supported.
- Start and End Times (
startandendorstarttimeandendtime): These measures indicate when a node becomes relevant (start) to the supply chain when it ceases to be relevant (end). A node can have astartwithout having anend. This measure, given as a Unix Time Stamp and with the unitutcwill also be printed as a conventional date by the Manifest web app. You may find it useful to refer to the site Epoch Converter to convert dates into timestamps.- For example:
(starttime,189302400,utc),(endtime,220942800,usd)describes the time rangeJanuary 1, 1976 12:00:00 AM - January 1, 1977 5:00:00 AM.
- For example:
- Date (
date): This measure, given as a Unix Time Stamp and with the unitutcwill also be printed as a conventional date by the Manifest web app. You may find it useful to refer to the site Epoch Converter to convert dates into timestamps.- For example:
(data,189302400,utc)will be formatted asJanuary 1, 1976.
- For example:
- Currencies: Any measure that includes a currency unit (usd,eur,gbp) print specially, showing the currency symbol in front of the value. These can also be given in terms of larger hyphenated values (million-usd, billion-eur, etc.)
- For example:
(Cost,100,usd)will be formatted as$100;(Cost,100,million-usd)will be formatted as$100 million.
- For example:
- Ranges: Any measure can include a ranged value (separated by a dash). When a fixed value is needed (for sorting, etc.) Manifest will use the midpoint value of the range.
- For example:
(Size,1000-5000,sqft)describes a size range between 1000 and 500 square feet.
- For example:
- Time Series: Any measure can include a time series instead of a fixed value. This is done by entering the measure value as a parenthetical list of comma separated times and values, with the time and value being represented as
time:value. This series indicates that, for this node, the value changes over time. This makes the most sense when nodes in the map are also indicatingstartandendtimes (see above). When the time slider interface is adjusted, the node will show the largest value of that measure currently in the selected time range.- For example:
(Productivity,(1546300800:100,1577836800:200,1609459200:300,1640995200:400,1672531200:500),units)indicates yearly productivity from 1/1/2019 to 1/1/2023 (starting with 100 units in 2019 and ending with 500 units in 2023).
- For example:
- Start and End Times (
-
Styling Information - Nodes in Manifest documents can be given certain styling cues to tell Manifest how to display them. Right now, the currently supported node-level style information includes:
- Color - Each node can have color information associated with it independent of the overall document color scheme. This can be useful for showing categorizations, groupings, etc. Each nodes color information includes a primary color, a secondary color, and a contrasting color (usually used for text). Individual colors for nodes can be entered as hexadecimal colors in the format:
primary,secondary,contrasting.- For example:
(#3498DB,#dbedf9,#dbedf9)
- For example:
- Icon - Each node can include an icon drawn from a pre-selected list (nodes that are clustered will always show the cluster icon instead). This list is:
[building, factory, warehouse, inventory, people, star, store, boat]- you can see these icons at: https://github.com/hock/Manifest/tree/master/src/lib/images/markers
- Color - Each node can have color information associated with it independent of the overall document color scheme. This can be useful for showing categorizations, groupings, etc. Each nodes color information includes a primary color, a secondary color, and a contrasting color (usually used for text). Individual colors for nodes can be entered as hexadecimal colors in the format:
Except where noted, Manifest materials are made available under the Creative Commons Attribution 4.0 International License. The Manifest database is made available under the Open Database License, with any rights in the individual contents of the database licensed under the Database Contents License. Manifest uses underlying map imagery © MapTiler / © OpenStreetMap contributors.