Kittybox Companion is live!
- Pretty permalinks for this post:
- https://fireburn.ru/posts/1575668368
- Also published on:
- https://twitter.com/kisik21/status/1203066475948498945
#Kittybox Companion is officially released now! It's hosted at https://kittybox.fireburn.ru/companion
Version 1.0 includes:
- Posting
- Uploading to media endpoint
- Syndication
- Reply capabilities
- Geolocation and checkins! (uses ?q=geo queries, ask your Micropub server developer if they implemented this)
Planned features
Posting and fetching h-cards
The new not-yet-deployed backend for my blog should include an address book, and Kittybox Companion allows to fill it. Unfortunately, it requires a CORS-supporting MF2-JSON parser web service that is not implemented yet (I plan to make a public one in Kittybox).
Logging out
You're trapped in the kitty box forever. It doesn't want to let you go. Logging out is not implemented yet. Clear your local storage.
Settings
For meow, settings screen is empty. I may put something in there.
Details on implementation
View framework
It at least looks like I've accidentally reimplemented a wheel by making myself a framework for single-page apps. It consists of one function and an array of views.
Views are defined by an ID starting from "view-". The function appropriately named "toggle_view()" switches to a certain view. If there's a button defined for that view (it needs to have a class "button-<viewname>"), it's switched to an active state.
I might separate that part into a library for reuse, it feels like a clever idea.
Or maybe I could learn, I don't know, Vue.js? Or whatever framework for SPAs is popular nowadays.
CORS
Unfortunately, JS in browser is restricting cross-origin fetches. There is no CORS proxy added, so your IndieWeb stack will need to support CORS.
Note: tokens.indieauth.com doesn't support CORS. If you're using it, use manual login flow, not the IndieAuth one.