Homepage widget
Homepage shows any JSON API through its
customapi widget. This one shows what you track and how far along you are.
Key: stats:read.
-
Create the key in Settings › Integrations, then give it to Homepage as an environment variable, so it stays out of your configuration files:
Terminal window HOMEPAGE_VAR_LOOMKEEP_API_KEY=lk_… -
Add the service to
services.yaml:- Media:- Loomkeep:href: https://loomkeep.appdescription: What I watch, play, read and listen toicon: https://loomkeep.app/favicon.svgwidget:type: customapiurl: https://loomkeep.app/api/v1/stats/summaryrefreshInterval: 900000 # 15 minutesheaders:Authorization: "Bearer {{HOMEPAGE_VAR_LOOMKEEP_API_KEY}}"mappings:- field: totallabel: Trackedformat: number- field: video.episodesWatchedlabel: Episodesformat: number- field: books.pagesReadlabel: Pages readformat: number- field: favoriteslabel: Favouritesformat: number
On a self-hosted instance, replace https://loomkeep.app with your own
address. If Homepage runs next to Loomkeep in the same Docker network, it can
call the API directly (http://api:3000/api/v1/…).
Variations
Section titled “Variations”- Reading goal:
books.readingGoal.completedandbooks.readingGoal.target. - Time spent, in minutes:
video.totalMinutesorgames.totalPlaytimeMinutes.
Every field is listed under GET /v1/stats/summary in the
reference.