Overview
Hopscotch projects are JSON files. They are stored on the mobile app as .hopscotch
files.
Essentially, JSON (JavaScript Object Notation) is a file format which organizes data using pairs of names and values, like a checklist, which both people and computers can easily read. For example:
{ // {} means it's a list of pairs
"name": "Alice",
"age": 12,
"homework_finished": false,
"hobbies": ["coding", "drawing"], // [] means it's a list of single items
"pets": [ // {} inside of [] count as single items!
{
"name": "bailey",
"age": 2,
"bio": { // {} inside of {}? No problem!
"description": "My lovely puppy!",
"status": "adorable"
}
},
{
"name": "max",
"age": 7
}
]
}
Anatomy
Projects are essentially containers inside of containers:
- Scenes contain a list of unique object identifiers (IDs).
- Objects contain a list of IDs to rules and custom rule instances.
- Custom rule instances are checked first by the web player[needs verification], containing a reference to a custom rule, as well as the parameters for that custom rule.
- Rules contain an ID to an ability.
- Abilities contain blocks, which can themselves contain abilities or parameters.
Nuances
Custom rule instances have the same properties as objects.
Viewing .hopscotch
Files
Coming soon!
Viewing Types
Types are magic numbers used in blocks, objects and parameters, which define their behavior.
Use the HS Tools API to view the latest data.
Due to the webplayer's data format, keys that end with zeroes will be formatted in scientific notation. For instance:
300
becomes3e2
4000
becomes4e3
Plain JSON Response
JSON Hero
An external website which neatly categorizes the data into sections. (We aren't affiliated with JSON Hero.)