Hatchery

From Badge team
Jump to navigation Jump to search

badge.team

The hatchery lives at badge.team and is a repository of apps for use on your badge.

Registration

Registration is simple, email can be whatever, for example test@test.com, it is only used for password resets.

App model

Apps are folders with as a minimal requirement a __init__.py file.

Hatchery will add an empty version of that file for you.

main()

This is what should be run after import by the Launcher.

on_boot.py

This is what will be started on boot (if present) like so from app import on_boot

You can use this to run TSR apps (take a look at the flashlight app for an example of this..

metadata.json

Unless you upload or create such a file, Hatchery will generate one . .

This contains at-minimum the description of the app and weather or not it should be shown in the Launcher.

Hatching eggs

Installation of apps on the badge is done with woezel via REPL or with help of a graphical Installer on the badge.

API

There's an api available, used by woezel and Installer:

/eggs/get/[app]/json       - get json data for a the egg named [app]
/eggs/list/json            - a list of all eggs with name, slug, description, revision
/eggs/search/[words]/json  - json data for search query [words]
/eggs/categories/json      - json list of categories
/eggs/category/[cat]/json  - json data for category [cat]

Since the badge.team merger there are now baskets for different badges

/basket/[badge]/list/json           - a list of all eggs for specific [badge]
/basket/[badge]/search/json         - [badge] specific search for [words]
/basket/[badge]/category/[cat]/json - json data for category [cat] on [badge]

You can play with this API here at: https://badge.team/api

Code

Hatchery on Github

Original documentation SHA2017Badge/Hatchery