Official iOS and Android client
Micro.blog App
The Micro.blog mobile app is a React Native client that signs in with Micro.blog tokens, reads timelines, posts through Micropub, uploads media, manages bookmarks, and registers for push notifications.
src/api/MicroBlogApi.js
Native Micro.blog REST endpoints for sign-in, timelines, replies, muting, push, bookmarks, and progress checks.
src/api/MicroPubApi.js
Micropub, IndieAuth, media upload, editing, drafts, pages, uploads, and collections.
src/api/XMLRPCApi.js
XML-RPC discovery and posting support for configured external blogs.
Sign in and token verification
The app can verify an existing app token or request an email sign-in link that returns to the custom mobile URL scheme.
Sends the email sign-in link and mobile redirect metadata.
Verifies an app token and returns the signed-in account profile.
Profile, timelines, and discovery
Timeline screens use the posts APIs for profile lookups, discovery, conversations, and the signed-in user's replies.
Loads a user's profile feed; the app passes count=0 when it only needs profile metadata.
Loads the Discover feed and tagmoji metadata.
Loads conversation context for a timeline item.
Loads the signed-in user's replies timeline.
Conversations and replies
Conversation screens fetch the reply thread, then post a reply with form data to avoid duplicate submissions.
Fetches replies and context for a post ID.
Publishes a reply to an existing Micro.blog post.
Posting, editing, drafts, and media
The composer uses Micropub for configuration, categories, syndication targets, source queries, post creation, updates, deletion, and media uploads.
Reads Micropub config, categories, syndication targets, contacts, posts, pages, drafts, and collections with q parameters.
Creates posts, updates posts, publishes drafts, deletes posts, and manages collections.
Searches and lists uploaded media.
Uploads images, videos, audio, and other media.
Uploads a large media file in chunks.
Marks a chunked upload as ready for server processing.
Polls for media processing status.
Deletes an existing Micro.blog post by ID.
Checks whether publishing has completed and whether new posts are available.
Relationships, muting, and reporting
Profile and safety controls use relationship endpoints for follow state, reports, muted users, muted keywords, and hiding other replies.
Follows a user from profile and discovery screens.
Unfollows a user.
Reports a user from the profile actions menu.
Lists muted users and keywords for settings.
Mutes a user, keyword, or hides other replies.
Removes a muted user or keyword.
Push notifications
Device registration keeps push settings in sync with the signed-in Micro.blog account and the current platform environment.
Reads notification registration state for a device.
Registers a device token for push notifications.
Removes a device token when notifications are disabled or the user signs out.
Bookmarks and highlights
Bookmark screens load saved links, tags, recent tags, highlights, and per-bookmark metadata, then save tag changes back to Micro.blog.
Lists saved highlights from bookmarked pages.
Deletes a saved highlight.
Lists all bookmark tags and recent tags.
Loads one bookmark and its metadata.
Saves tag changes for one bookmark.
IndieAuth and external blog protocols
The app can add external Micropub and XML-RPC services. For Micro.blog-hosted blogs, these same protocol endpoints are exposed by Micro.blog.
Starts the IndieAuth authorization flow for Micro.blog-hosted blogs.
Exchanges an authorization code for an access token.
Handles MetaWeblog-compatible XML-RPC calls for Micro.blog-hosted blogs.