End-User Manual

bluesky-social/social-app

Generated by Inkwell Forge — automated codebase documentation analysis. Based on analysis of 131 screens. Subject matter expert review is recommended before distribution.

May 5, 2026

Social App

End-User Manual

Document Date: May 2026

Generated by Inkwell Forge — automated codebase documentation analysis. Subject matter expert review is recommended before distribution.


Cover Page

Application Name: Social App (Bluesky) Document Title: End-User Manual Date: May 2026

Generated by Inkwell Forge — automated codebase documentation analysis. Subject matter expert review is recommended before distribution.


About This Document

This End-User Manual covers 131 screen(s) of the Social App (Bluesky) application.

Screens covered in this document:

Inbox, Shell (Search), Feed, Images (Onboarding Step Finished), Choose Account Form, Status Bar Shadow, Shell (Profile Header), Handle Suggestions, Miscellaneous Notification Settings, Account Settings, Messages Settings, Utils (Search), Mention Notification Settings, Settings, Deactivated, Log, Hashtag, No Saved Feeds Of Any Type, No Following Feed, No Feeds Pinned, Find Contacts Flow, List Hidden, Shared Preferences Tester, Form Container, Set New Password Form, State (Onboarding), Login Form, Chat List, Emoji Picker, Value Proposition Pager Shared, GIF View, Password Updated Form, Verification Settings, Forgot Password Form, Value Proposition Pager, Expo Scroll Forwarder, Find Contacts Intro (Web), Find Contacts (Web), Activity List, Layout (Onboarding), Conversation, Avatar Creator Items, Edit Profile Dialog, Growable Banner, Starter Pack Card (Onboarding), Feed Section (Profile List), Types (Onboarding Step Profile), Post Thread Constants, Value Proposition Pager (Web), Interest Button, Metrics (Profile Header), Handle (Profile Header), Growable Avatar, Avatar Circle (Onboarding), Util (Onboarding), Post Liked By, Status Bar Shadow (Web), Profile Labeler Liked By, Explore Trending Videos, Explore Trending Topics, Suggested Follows (Profile Header), Profile Followers, Profile Follows, Known Followers, Profile Search, Explore Recommendations, Feed (Profile Sections), Explore Suggested Accounts, Labels (Profile Sections), Search Results, Saved Feeds, Types (Profile Sections), Explore Interests Card, Explore, App Passwords, Activity Privacy Settings, External Media Preferences, App Icon Settings (Web), App Icon Settings List Item (Web), App Icon Image, App Icon Settings List Item, Types (App Icon Settings), Automation Label Settings, Accessibility Settings, Appearance Settings, About Settings, Interests Settings, Content And Media Settings, Find Contacts Settings, Following Feed Preferences, Legacy Notification Settings, Reposts On Reposts Notification Settings, New Follower Notification Settings, Reply Notification Settings, Quote Notification Settings, Privacy And Security Settings, Like Notification Settings, Thread Preferences, Likes On Reposts Notification Settings, Repost Notification Settings, Splash, Starter Pack, Gesture Action, Signup Queued, Draggable Scroll, Takendown, Video Feed (Web), Error Screen, Back Next Buttons, Step Details (Starter Pack Wizard), Captcha Web, Types (Video Feed), State (Signup), State (Starter Pack Wizard), Starter Pack Landing, Topic, Step Profiles (Starter Pack Wizard), Step Feeds (Starter Pack Wizard), Policies, Captcha Web View (Web), Placeholder Canvas, Display Name (Profile Header), Post Quotes, Avatar Creator Circle, Activity Notification Settings, Profile Header Standard, Post Reposted By, Language Settings, Error State (Profile), About Section (Profile List), Profile Header Labeler

Screens and features not included in the assessed documentation are outside the scope of this document.


Chapter 1: Introduction

1.1 What Is This Application?

Bluesky is a decentralized social networking application built on the AT Protocol — an open standard that allows users to own their identity and data. Like other social platforms, Bluesky lets you post short messages, follow other users, like and repost content, and have direct message conversations. What makes it different is that your account identity is portable and not tied to a single company's servers.

You can use Bluesky to:

1.2 Who Uses It?

Bluesky is designed for anyone who wants to participate in public conversation online. Whether you are a new user just getting started or an experienced user managing multiple accounts, this manual covers the features you will encounter day to day.

1.3 Getting Started

How to Create an Account

If you are new to Bluesky, tap Create account on the welcome screen. You will be guided through a multi-step process to enter your email address, choose a password, select a username (called a handle), and complete a verification step. See Chapter 9: Onboarding for detailed instructions.

How to Sign In

If you already have an account, tap Sign in on the welcome screen. Enter your username or email address and your password. If your account uses two-factor authentication (2FA), you will also be asked for a code sent to your email.

How to Sign Out

To sign out, go to Settings (accessible from your profile or the navigation menu) and scroll to the bottom of the settings list. Tap Sign out. You will be asked to confirm. Note that signing out will end all active sessions for all accounts on this device.

Session Timeout

Your session remains active until you explicitly sign out. If your session expires due to inactivity or a server-side change, you will be returned to the sign-in screen automatically.

Basic Navigation

The application is organized around a bottom navigation bar (on mobile) or a sidebar (on desktop/tablet) with tabs for your home feed, search/explore, notifications, and messages. Tapping any tab takes you to that section. Tapping the active tab again scrolls the current screen back to the top and refreshes the content.


Chapter 2: Common Features Guide

This chapter describes UI patterns and controls that appear on multiple screens throughout the application. Rather than repeating these explanations in every chapter, you can refer back here whenever you encounter one of these elements.


2.1 Working with Lists and Feeds

What it is: Many screens display a scrollable list of items — posts, conversations, profiles, or feeds. These lists behave consistently across the application.

Scrolling: Swipe up to scroll down through the list. On desktop, use your mouse wheel or trackpad.

Loading more items: When you reach the bottom of a list, the application automatically loads the next batch of items (called "infinite scroll"). A small loading indicator appears at the bottom while new items are being fetched.

Load new content button: When new items have arrived since you last loaded the screen, a floating button appears (usually near the top or bottom of the screen) labeled Load new posts or similar. Tap it to jump to the top and see the latest content.

Empty state: When a list has no items to show, you will see an icon and a short message explaining why the list is empty, along with any available actions (such as a button to add content).

Error state: If the list fails to load, you will see an error message and a Retry button. Tap Retry to try loading again.


2.2 Using the Search and Filter Controls

What it is: The search bar appears at the top of the Search screen and in some other contexts (such as the Starter Pack wizard). It lets you type a query to find posts, people, or feeds.

Typing a query: Tap the search bar and type your search terms. Results update as you type.

Clearing the search: Tap the × (clear) button inside the search bar to erase your query and return to the default view.

Canceling search: On mobile, a Cancel button appears next to the search bar while it is active. Tap it to dismiss the keyboard and return to the previous view.

Advanced search filters: You can add filters directly in the search bar using the format filter:value. For example, from:alice.bsky.social limits results to posts by that user, and lang:en limits results to English-language posts.

Language filter: On the Search screen, a language dropdown appears in or near the header when filters are available. Use it to restrict results to a specific language.


2.3 Notification Toggle Controls

What it is: Throughout the Notification Settings screens, you will encounter toggle controls for enabling or disabling specific types of notifications. These controls work the same way on every notification settings screen.

Push notifications toggle: A switch or checkbox labeled Push notifications. When turned on, you receive device-level notifications (banner alerts, lock screen alerts) for that event type.

In-app notifications toggle: A switch or checkbox labeled In-app notifications. When turned on, that event type appears in your in-app notification list.

From filter: Some notification types include a radio button group labeled From, with options Everyone and People I follow. This controls whose actions trigger notifications. The filter is automatically disabled (grayed out) if you have turned off all notification channels for that type.

Changes save immediately: There is no Save button on notification settings screens. Every toggle change is saved to your account the moment you make it.


2.4 Settings List Navigation

What it is: The Settings section of the application uses a consistent list layout. Each row in a settings list is either a navigation link (tapping it takes you to a sub-screen) or an inline control (a toggle or button that acts immediately).

Navigation rows: These rows show a label, an optional icon on the left, and a right-pointing chevron (›) on the right. Tap the row to go to the corresponding settings screen.

Toggle rows: These rows show a label and a switch or checkbox on the right. Tap the switch to toggle the setting on or off immediately.

Dividers: Horizontal lines separate logical groups of settings within a screen.

Back navigation: Every settings sub-screen has a Back button in the top-left corner of the header. Tap it to return to the previous screen.


2.5 Pull-to-Refresh

What it is: On any scrollable list screen, you can refresh the content by pulling down from the top of the list.

How to use it: Scroll to the very top of the list, then continue pulling downward. A loading spinner appears. Release your finger and the screen will reload its content from the server.

When to use it: Use pull-to-refresh when you want to check for new posts, messages, or notifications without waiting for the automatic refresh cycle.


2.6 Swipe Gestures on List Items

What it is: On native (iOS and Android) devices, many list items — particularly conversation rows in the Messages section — support swipe gestures to reveal quick actions.

Swipe left (first threshold): Swipe a conversation row partway to the left to reveal a Mark as read action (shown in blue). Release to trigger it.

Swipe left (second threshold): Swipe further left to reveal a Delete or Leave action (shown in red). Release to trigger it.

Visual feedback: As you swipe, the background color changes and an icon appears to indicate which action will be triggered when you release.

Haptic feedback: On supported devices, you will feel a brief vibration when you cross each action threshold, confirming that releasing your finger will trigger that action.


2.7 Dialogs and Confirmation Prompts

What it is: Some actions — particularly destructive ones like deleting content or blocking a user — require you to confirm your intent in a dialog box before the action is carried out.

Confirmation dialogs: A dialog appears with a title, a description of what will happen, and two buttons: a colored action button (e.g., Delete, Block) and a Cancel button. Tap the action button to proceed or Cancel to go back.

Discard changes prompts: If you have made changes in a form (such as the Edit Profile dialog) and try to close it without saving, a prompt asks whether you want to discard your changes. Tap Discard to close without saving, or Cancel to return to the form.


2.8 Profile Cards

What it is: Throughout the application, user profiles are displayed as compact cards showing the user's avatar, display name, handle, and a brief bio excerpt. Profile cards appear in search results, suggested accounts, follower lists, and more.

Tapping a profile card: Tapping anywhere on a profile card navigates to that user's full profile page.

Follow button: Many profile cards include a Follow or Following button on the right side. Tap it to follow or unfollow that user directly from the card without navigating to their profile.

Avatar: The circular (or rectangular, for moderation service accounts) image on the left side of the card. Tapping the avatar may open a larger view of the image.


2.9 Error and Empty States

What it is: When a screen cannot load its content, or when there is simply nothing to show, the application displays a consistent placeholder.

Error state: Shows an icon, a brief message explaining the problem (e.g., "Something went wrong"), and a Retry button. Tap Retry to attempt loading again.

Empty state: Shows an icon and a message explaining why the list is empty (e.g., "No posts yet" or "Inbox zero!"). Sometimes an action button is included to help you get started.

Loading state: Shows a skeleton placeholder or a spinning indicator while content is being fetched from the server.


2.10 The Overflow Menu (Three-Dot Menu)

What it is: Many screens and list items include a three-dot (⋯) button that opens a menu of additional actions. The options in this menu vary depending on the context.

Opening the menu: Tap the three-dot button. A menu slides up from the bottom (on mobile) or appears as a dropdown (on desktop).

Common options: Depending on the context, the menu may include options such as Share, Report, Mute, Block, Copy link, Delete, and Edit.

Closing the menu: Tap anywhere outside the menu, or tap the three-dot button again, to dismiss it without taking any action.


Chapter 3: Messaging

3.1 Chat List (Messages Home)

Overview

The Chat List is your main messaging hub. It shows all your accepted direct message conversations in one place, along with a preview banner for any pending chat requests you have not yet reviewed.

Getting There

Tap the Messages tab in the bottom navigation bar (or sidebar on desktop).

What You'll See

[Screenshot: Chat List screen showing conversation list with header and inbox preview banner]

Header bar: At the top of the screen you will see the title Chats. On the right side is a gear icon that links to Messages Settings. On desktop, a New chat button also appears in the header.

Inbox preview banner: If you have pending chat requests (messages from people you have not yet accepted), a banner appears at the top of the list. It shows an envelope icon, a small blue dot if there are unread requests, and small circular avatars of the people who sent requests. Tap the banner to go to the Inbox (Chat Requests) screen.

Conversation list: Below the banner, each accepted conversation appears as a row containing:

Empty state: If you have no conversations yet, you will see a message icon and the text "You have no conversations yet. Start one!"

Loading state: A skeleton placeholder appears while conversations are being fetched.

Error state: If conversations fail to load, an error message appears with a Retry button.

Available Actions

Viewing Conversations

Starting a New Conversation

Managing Conversations (Native)

Managing Conversations (Web)

Refreshing

Going to Chat Requests

Accessing Settings

Field Reference

This screen has no user input fields. All interactions are tap-based.

Tips & Best Practices

Common Questions

Why can't I start a new chat? You need a verified email address to initiate new conversations. Go to Account Settings and verify your email.

What is the difference between the main list and the Inbox? The main list shows conversations you have accepted. The Inbox shows chat requests — messages from people you have not yet responded to.

Can I mute a conversation without leaving it? Yes. Long-press the conversation row (native) or hover and use the menu (web) to find the Mute option.

What happens if I delete a conversation? Deleting a conversation removes it from your list. The other person's copy is not affected.

Why does a conversation show "Conversation deleted"? This means the other person's account has been deleted or deactivated.

Troubleshooting

Problem Cause What to Do
Conversations won't load Network issue or server error Pull to refresh, or tap Retry
New chat button is disabled Email not verified Verify your email in Account Settings
A conversation is missing You may have left it Check if you accidentally swiped to delete
Messages are not updating App may be in the background Bring the app to the foreground; it polls every 10 seconds when active

3.2 Inbox (Chat Requests)

Overview

The Inbox shows chat requests — direct messages sent to you by people you have not yet accepted. You can review each request and choose to accept it, reject it, block the sender, or report the conversation.

Getting There

Tap the inbox preview banner at the top of the Chat List, or navigate directly from the Messages section.

What You'll See

[Screenshot: Inbox screen showing pending chat requests]

Header: The title Chat requests appears at the top. On tablet, a Mark all as read button may appear in the header when you have unread requests.

Request list: Each pending request appears as a conversation row (see Chat List for row details) with two additional elements:

Accept button: Tap to accept the chat request. If your email is not verified, you will be prompted to verify it first.

Reject button/menu: Tap to open a menu with three options:

Deleted account requests: If the sender's account has been deleted, only a Delete chat button appears (no Accept option).

Floating "Mark all as read" button: On mobile, when you have unread requests, a floating button appears at the bottom of the screen to mark all requests as read at once.

Empty state: If you have no pending requests, you will see a message icon and "Inbox zero!" with a Back to Chats button.

Error state: An error icon, "Whoops!" heading, and a Retry button appear if requests fail to load.

Available Actions

Reviewing Requests

Accepting a Request

Rejecting a Request

Marking All as Read

Navigating Back

Field Reference

This screen has no user input fields.

Tips & Best Practices

Common Questions

What happens when I accept a request? The conversation moves to your main Chat List and you can exchange messages freely.

Can the sender tell if I rejected their request? No. Rejecting or deleting a request does not send any notification to the sender.

Why is the Accept button not working? Your email address may not be verified. A verification prompt will appear — follow the steps to verify your email, then try again.

What does "Deleted Account" mean in the request list? The person who sent the request has since deleted or deactivated their account. You can only delete the conversation, not accept it.

Can I undo a block? Yes. You can unblock accounts from your account settings or from the blocked user's profile.

Troubleshooting

Problem Cause What to Do
Accept button shows a verification prompt Email not verified Follow the verification steps shown
Request list won't load Network issue Tap Retry
Can't find a request I saw earlier You may have already acted on it Check your main Chat List

3.3 Conversation

Overview

The Conversation screen shows the full message history between you and one other person, and lets you send new messages.

Getting There

Tap any conversation row in the Chat List, or tap Accept on a chat request in the Inbox.

What You'll See

[Screenshot: Conversation screen showing message thread and input area]

Header: Shows the other person's avatar, display name, and handle. A back button returns you to the Chat List.

Message list: The full conversation history, with the most recent messages at the bottom. Your messages appear on one side; the other person's messages appear on the other.

Message input area: At the bottom of the screen, a text field lets you type a new message. A send button submits it.

Blocked/restricted footer: If the conversation is restricted (for example, a chat request you just accepted), a banner may appear at the bottom explaining the restriction and offering options to accept or decline.

Loading overlay: A spinner appears while the conversation history is loading. The screen waits until messages have scrolled to the bottom before revealing the content, to avoid a jarring flash.

Error state: If the conversation fails to load, an error message appears with a Try again button.

Available Actions

Reading Messages

Sending a Message

Navigating Back

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Message text The message you want to send Yes Any text "Hey, are you free this weekend?"

Tips & Best Practices

Common Questions

Why can't I send a message? Your email may not be verified. A prompt will appear — follow the steps to verify, then return to the conversation.

What happens if I navigate away mid-conversation? Your draft is not saved. The conversation history is preserved on the server.

Troubleshooting

Problem Cause What to Do
Conversation won't load Network issue or server error Tap Try again
Can't send messages Email not verified Complete email verification when prompted

3.4 Messages Settings

Overview

The Messages Settings screen lets you control who can send you new direct messages and (on mobile devices) whether chat notifications play a sound.

Getting There

From the Chat List, tap the gear icon in the header.

What You'll See

Header: Title reads Chat Settings.

Allow new messages from: A radio button group with three options:

Notification Sounds (mobile only): A radio button group with two options:

Informational tip: A note explains that changing this setting does not affect conversations you are already in — only new conversation requests are affected.

Available Actions

Changing Who Can Message You

Toggling Notification Sounds (mobile only)

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Allow new messages from Controls who can start new conversations with you Yes Everyone / Users I follow / No one Users I follow
Notification Sounds (mobile) Whether a sound plays for new chat notifications Yes (mobile only) Enabled / Disabled Enabled

Tips & Best Practices

Common Questions

Will changing this setting close my existing conversations? No. Existing conversations are not affected. Only new conversation requests are controlled by this setting.

Why don't I see the Notification Sounds option? This option is only available on the native mobile app (iOS and Android), not on the web version.

Troubleshooting

Problem Cause What to Do
Setting change doesn't seem to take effect Network issue Check your internet connection and try again
Error toast appears after changing setting Server error Wait a moment and try again

Chapter 4: Search and Explore

4.1 Search Shell

Overview

The Search screen is your gateway to discovering content, people, and feeds across Bluesky. It combines a search input with an Explore feed that surfaces trending topics, suggested accounts, popular feeds, and starter packs when you are not actively searching.

Getting There

Tap the Search tab in the bottom navigation bar.

What You'll See

[Screenshot: Search screen showing search bar and Explore content]

Search bar: At the top of the screen. Tap it to start typing a search query. A Cancel button appears while the search bar is active.

Language filter: A dropdown near the search bar (visible when filters are available) lets you restrict results to a specific language.

Autocomplete suggestions: While you are typing, a list of suggested search terms and matching profiles appears below the search bar.

Search history: When the search bar is focused but empty, your recent searches appear — both recent queries and recently viewed profiles. Tap any item to search again, or tap the × next to an item to remove it from your history.

Explore content (when not searching): When no query is active, the screen shows discovery content organized into sections. See Explore for details.

Search results (when searching): When you submit a query, results appear in tabs. See Search Results for details.

Available Actions

Searching

Clearing a Search

Filtering by Language

Removing Search History Items

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Search query The term or phrase you want to search for No Any text; supports filter:value syntax bluesky lang:en

Tips & Best Practices

Common Questions

Why are some tabs missing from my search results? The People and Feeds tabs only appear when you search without any filter parameters. If you add a filter like lang:en, those tabs are hidden.

Can I search without being logged in? You can view the Explore section, but post search results require you to be signed in.

Troubleshooting

Problem Cause What to Do
No results appear Query may be too specific or no matching content exists Try a broader search term
Search bar doesn't respond App may need a refresh Pull to refresh or restart the app

4.2 Search Results

Overview

After submitting a search query, results are displayed in up to four tabs: Top, Latest, People, and Feeds.

Getting There

Type a query in the Search Shell and press the search key.

What You'll See

[Screenshot: Search results screen showing tabs and post results]

Tab bar: Four tabs appear at the top of the results area:

Post results (Top and Latest tabs): A scrollable list of posts. Each post shows the author's avatar, name, handle, post content, and engagement counts.

People results: A scrollable list of profile cards with follow buttons.

Feed results: A scrollable list of feed cards showing the feed name, description, and a subscribe button.

Empty state: If no results are found, a message appears: "We couldn't find any results for that query." with a link to search tips.

Loading state: A spinner appears while results are being fetched.

Error state: An error message appears with a Retry option.

Available Actions

Browsing Results

Refreshing Results

Navigating to a Result

Field Reference

This screen has no user input fields (the search query is entered in the Search Shell).

Tips & Best Practices

Common Questions

Why do I see duplicate posts in the results? The application automatically removes duplicate posts across pages, but occasionally a post may appear more than once if it matches multiple result pages.

Troubleshooting

Problem Cause What to Do
Results don't load Network issue Pull to refresh or tap Retry
People/Feeds tabs are missing Filter parameters are active in your query Remove filters like lang:en from your search

4.3 Explore

Overview

The Explore screen surfaces discovery content when you are not actively searching. It shows trending topics, suggested accounts to follow, popular feeds, starter packs, and feed previews.

Getting There

Open the Search Shell without typing a query. The Explore content appears automatically.

What You'll See

[Screenshot: Explore screen showing trending topics, suggested accounts, and feed sections]

The Explore screen is a single scrollable list organized into sections. The sections shown depend on your language settings:

Trending Topics: A list of currently popular topics on Bluesky. Each row shows a rank number, the topic name, a category label, small avatars of associated accounts, and a badge indicating whether the topic is "Hot," "New," or how many hours ago it started trending. Tap a topic to see posts about it.

Suggested Feeds: A section showing popular custom feeds you might want to subscribe to. A Search button in the section header lets you search for more feeds. A Load more button reveals additional suggestions.

Suggested Accounts: A section showing accounts you might want to follow, organized by interest category. Tabs at the top of this section let you filter by interest (e.g., News, Sports, Technology). Tap a profile card to view the profile, or tap Follow to follow directly.

Suggested Starter Packs: Curated bundles of accounts and feeds. Tap a starter pack card to view it.

Feed Previews: Sample posts from suggested feeds, giving you a taste of what each feed contains.

Interests NUX card: If you have not yet dismissed it, a card at the top shows your selected interests and offers a link to edit them. Tap Hide this card to dismiss it permanently.

Available Actions

Discovering Content

Following Accounts

Filtering Suggested Accounts by Interest

Searching Within a Section

Loading More Feeds

Field Reference

This screen has no user input fields.

Tips & Best Practices

Common Questions

Why don't I see trending topics? Trending topics may be disabled by the service, or your content language settings may exclude them. Check your language settings.

Why are some sections missing? If your content language preferences do not include English, the Explore screen shows a simplified view with only suggested accounts.

Troubleshooting

Problem Cause What to Do
Sections fail to load Network issue Pull to refresh
Suggested accounts seem irrelevant Interests not configured Edit your interests in Settings

4.4 Hashtag Screen

Overview

The Hashtag screen shows posts tagged with a specific hashtag or cashtag, in either Top (most relevant) or Latest (most recent) order.

Getting There

Tap a hashtag link (e.g., #bluesky) in any post. You can also navigate here from search results.

What You'll See

Header: Shows the hashtag (e.g., #bluesky) as the title. If the hashtag is very long, it is truncated in the middle. A Share button appears on the right.

Tabs: Two tabs — Top and Latest — let you switch between sort orders.

Post list: A scrollable list of posts containing the hashtag.

Empty state: "We couldn't find any results for that tag."

Error state: An error message with a Retry button.

Logged-out state: If you are not signed in, a prompt appears with links to sign in or create an account.

Available Actions

Browsing Posts

Sharing the Hashtag

Filtering by Author

Field Reference

This screen has no user input fields.

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
No results appear No posts with this hashtag exist Try a related hashtag
Results won't load Network issue Tap Retry

4.5 Topic Screen

Overview

The Topic screen is similar to the Hashtag screen but is used for broader topic categories rather than specific hashtags. It shows posts related to a topic in Top or Latest order.

Getting There

Tap a topic link from the Explore screen or from within a post.

What You'll See

The layout is identical to the Hashtag Screen: a header with the topic name and a Share button, two sort tabs, and a scrollable post list.

Available Actions

Same as the Hashtag Screen.

Field Reference

This screen has no user input fields.

Tips & Best Practices

Troubleshooting

Same as the Hashtag Screen.


Chapter 5: Your Feed

5.1 The Feed Screen

Overview

The Feed screen is the core content-browsing experience. It displays a scrollable list of posts from a feed source — your Following timeline, the Discover algorithmic feed, a custom feed generator, or an author's posts.

Getting There

The Feed screen is the default view when you open the app. You can also access specific feeds by tapping feed tabs in the home screen navigation.

What You'll See

[Screenshot: Feed screen showing posts with floating Load Latest button and compose FAB]

Post list: A scrollable list of posts. Each post card shows:

Interstitials: Between posts, the feed may insert non-post content such as:

Load Latest button: A floating circular button (arrow icon) appears when new posts are available or when you have scrolled down. Tap it to jump to the top and load the latest content.

Compose button (FAB): A floating circular button in the bottom-right corner (pencil/compose icon) opens the post composer. Only visible when you are signed in.

Empty state: If the feed has no posts, a custom empty state message appears (varies by feed type).

Error state: An error message with a Retry button appears if the feed fails to load.

Feed shutdown message: If a feed you are subscribed to has been shut down, a banner appears at the top with options to Remove feed or Replace with Discover.

Discover fallback banner: If your Following feed runs out of posts, a banner appears indicating that the feed has switched to showing Discover content.

Available Actions

Browsing Posts

Composing a Post

Interacting with Posts

Managing a Shut-Down Feed

Field Reference

This screen has no user input fields (post composition happens in a separate composer screen).

Tips & Best Practices

Common Questions

Why do I see posts from people I don't follow? The Discover feed and some custom feeds include posts from accounts you don't follow. Check which feed tab is active.

What does the red ring around an avatar mean? The author is currently live streaming. Tap their avatar to see their live status.

What is the "Discover fallback" banner? When your Following feed runs out of posts, the app automatically shows Discover content to fill the gap. The banner lets you know this has happened.

Troubleshooting

Problem Cause What to Do
Feed won't load Network issue or server error Pull to refresh or tap Retry
Feed shows a shutdown message The feed generator has been discontinued Remove or replace the feed using the banner buttons
New posts don't appear App is not polling Tap the Load Latest button or pull to refresh

5.2 Saved Feeds

Overview

The Saved Feeds screen lets you organize the feeds that appear in your home screen navigation. You can reorder pinned feeds, pin or unpin saved feeds, remove feeds, and add the Following timeline if it is missing.

Getting There

Go to SettingsContent & MediaManage saved feeds.

What You'll See

[Screenshot: Saved Feeds screen showing pinned and unpinned feed lists]

Header: Title reads Feeds with a Save changes button on the right. The button is highlighted (primary color) when you have unsaved changes.

Pinned Feeds section: A list of feeds that appear as tabs in your home screen navigation. You can reorder these by dragging (or using up/down buttons if you use a screen reader).

Unpinned Feeds section: Feeds you have saved but not pinned. They are accessible but not shown as prominent tabs.

No Following Feed notice: If you have no Following feed saved, a prompt appears offering to add it.

No Saved Feeds notice: If you have no saved feeds at all, a prompt appears offering to add a set of recommended feeds.

Footer: A link to the Bluesky feed generator guide for developers.

Available Actions

Reordering Pinned Feeds

Pinning or Unpinning a Feed

Removing a Feed

Adding the Following Feed

Adding Recommended Feeds

Saving Changes

Field Reference

This screen has no text input fields.

Tips & Best Practices

Common Questions

What is the difference between pinned and saved feeds? Pinned feeds appear as prominent tabs in your home screen navigation. Saved feeds are stored in your account but not shown as tabs — you can access them through the feeds list.

Can I have too many pinned feeds? There is no hard limit shown on this screen, but having too many pinned feeds can make navigation crowded. Consider keeping only your most-used feeds pinned.

Troubleshooting

Problem Cause What to Do
Save fails Network issue Check your connection and try again
Drag reordering doesn't work Screen reader may be active Use the up/down arrow buttons instead

5.3 No Saved Feeds

Overview

This screen appears when you have no saved feeds of any kind. It offers a quick way to populate your feeds with a recommended set.

Getting There

This screen appears automatically in the Feeds section when you have no saved feeds.

What You'll See

A message explaining that you have no saved feeds, and a Use recommended button with a plus icon.

Available Actions

Field Reference

This screen has no user input fields.


5.4 No Following Feed

Overview

This screen appears when you have saved feeds but none of them is the standard Following timeline. It offers a quick way to add it.

Getting There

This screen appears automatically in the Feeds section when you have no Following feed.

What You'll See

A message explaining that you have no Following feed, with an inline link Click here to add one.

Available Actions

Field Reference

This screen has no user input fields.


5.5 No Feeds Pinned

Overview

This screen appears when you have unpinned all of your feeds, leaving your home feed empty. It offers two ways to recover.

Getting There

This screen appears automatically on the home screen when all feeds have been unpinned.

What You'll See

A "Whoops!" heading, an explanation that all feeds were unpinned, and two buttons:

Available Actions

Field Reference

This screen has no user input fields.


Chapter 6: Profiles

6.1 Profile Header (Standard User)

Overview

The profile header is the top section of any user's profile page. It shows the user's identity, social metrics, bio, and action buttons for following, messaging, or managing your relationship with them.

Getting There

Tap any user's avatar, display name, or handle anywhere in the app to navigate to their profile.

What You'll See

[Screenshot: Profile header showing banner, avatar, display name, metrics, and action buttons]

Banner image: A wide image at the top of the profile (150px tall). Tap it to view the full-size image.

Avatar: A circular profile picture overlapping the bottom of the banner. Tap it to view the full-size image. If the user is currently live streaming, the avatar has a red ring around it.

Action buttons row: Appears to the right of the avatar area:

Display name: Large bold text showing the user's chosen display name.

Verification/role badges: Small icons next to the display name indicating verified status or special roles.

Handle: The user's @username in smaller text. A "Follows you" badge appears if this person follows you.

Metrics row: Three tappable links showing:

Bio/description: The user's profile description, which may include links, mentions, and hashtags.

Known followers: If you and this person share mutual followers, small avatars of those mutual followers appear here.

Suggested follows: After you follow someone, a section may expand below the header suggesting other accounts you might like.

Moderation alerts: If any content labels apply to this profile, an alert banner appears.

Available Actions

Following/Unfollowing

Messaging

Subscribing to Activity Notifications

Editing Your Own Profile

Viewing Full-Size Images

Viewing Followers/Following

Blocking/Unblocking

Edit Profile Dialog

When you tap Edit Profile on your own profile, a dialog opens with the following fields:

Field Name What It Means Required? Accepted Values / Format Example
Display Name Your public name shown on your profile No Text; maximum character limit applies Alice Johnson
Description Your profile bio No Text with links, mentions, hashtags; maximum character limit applies Writer and coffee enthusiast
Avatar Your profile picture No Image file (tap to select from your device)
Banner Your profile banner image No Image file (tap to select from your device)

Tap Save to apply changes. Tap Cancel (or the close button) to discard changes — you will be asked to confirm if you have made edits.

Verification warning: If you are a verified user and change your display name, a warning appears explaining that your verification status will be removed.

Tips & Best Practices

Common Questions

Why can't I follow this person? If a block relationship exists (you blocked them or they blocked you), the follow button may not be available.

What does the red ring around the avatar mean? This person is currently live streaming. Tap the avatar to see their live status.

Why is the Subscribe button grayed out? The account owner's privacy settings may not allow subscriptions from you. For example, if they only allow subscriptions from mutual followers and you don't follow each other, the button will be unavailable.

Troubleshooting

Problem Cause What to Do
Follow button doesn't respond Network issue or block relationship Check your connection; if blocked, you cannot follow
Edit Profile save fails Network issue or character limit exceeded Check the character count indicators and your connection
Profile won't load Network issue Pull to refresh

6.2 Profile Header (Labeler / Moderation Service)

Overview

Labeler profiles look similar to standard profiles but represent moderation services that users can subscribe to. Subscribing to a labeler applies that service's content labels to your feed experience.

Getting There

Navigate to a labeler's profile the same way as any other profile — tap their name or handle.

What You'll See

The layout is similar to a standard profile header, with these differences:

Rectangular avatar: Labeler accounts use a rectangular avatar instead of a circular one.

Subscribe/Unsubscribe button: Instead of a Follow button, you see a Subscribe to Labeler button (purple) or Unsubscribe button (gray).

Like button and count: A heart icon and like count appear below the bio. Tap the heart to like the labeler service. Tap the count to see who has liked it.

Labels tab: The profile has a Labels tab showing the content labels this service provides and letting you configure how each label affects your experience.

Available Actions

Subscribing/Unsubscribing

Liking the Labeler

Configuring Label Preferences

Field Reference

Same as the Edit Profile Dialog in the standard profile section (only visible on your own labeler profile).

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
Subscribe button is unavailable You have reached the maximum number of labeler subscriptions Unsubscribe from another labeler first
Like button is disabled You are not signed in Sign in to like labelers

6.3 Profile Followers

Overview

Shows a list of all accounts that follow a given profile.

Getting There

Tap the Followers count on any profile header.

What You'll See

Header: Shows the profile's display name as the title and the follower count as a subtitle (e.g., "1,234 followers").

Follower list: A scrollable list of profile cards, each with a Follow button.

Available Actions

Field Reference

This screen has no user input fields.


6.4 Profile Follows

Overview

Shows a list of all accounts that a given profile follows.

Getting There

Tap the Following count on any profile header.

What You'll See

Header: Shows the profile's display name as the title and the following count as a subtitle (e.g., "567 following").

Following list: A scrollable list of profile cards, each with a Follow button.

Available Actions

Same as Profile Followers.

Field Reference

This screen has no user input fields.


6.5 Known Followers

Overview

Shows the accounts that both you and a specific profile follow — your mutual connections with that person.

Getting There

Tap the "Known followers" indicator on a profile header (visible when you share mutual connections with that person).

What You'll See

Header: Title reads "Followers you know."

List: A scrollable list of profile cards showing mutual followers, each with a Follow button.

Empty state: "You don't follow any users who follow @handle."

Available Actions

Field Reference

This screen has no user input fields.


Overview

Lets you search for posts by a specific user, scoped to their profile.

Getting There

Tap the search icon on a user's profile page (if available).

What You'll See

A search interface identical to the Search Shell, but with the search automatically restricted to posts from that specific user. The search bar placeholder reads "Search @handle's posts" (or "Search my posts" on your own profile).

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Search query The term to search within this user's posts No Any text "coffee"

6.7 Post Liked By

Overview

Shows a list of all accounts that have liked a specific post.

Getting There

Tap the like count on any post.

What You'll See

Header: Title reads "Liked By" with the like count as a subtitle (e.g., "42 likes").

Liked-by list: A scrollable list of profile cards.

Available Actions

Field Reference

This screen has no user input fields.


6.8 Post Reposted By

Overview

Shows a list of all accounts that have reposted a specific post.

Getting There

Tap the repost count on any post.

What You'll See

Header: Title reads "Reposted By" with the repost count as a subtitle (e.g., "15 reposts").

Reposted-by list: A scrollable list of profile cards.

Available Actions

Same as Post Liked By.

Field Reference

This screen has no user input fields.


6.9 Post Quotes

Overview

Shows a list of all posts that have quoted a specific post (reposts with added commentary).

Getting There

Tap the quote count on any post.

What You'll See

Header: Title reads "Quotes" with the quote count as a subtitle (e.g., "8 quotes").

Quotes list: A scrollable list of quote posts.

Available Actions

Field Reference

This screen has no user input fields.


6.10 Profile Labeler Liked By

Overview

Shows a list of accounts that have liked a specific labeler (moderation service).

Getting There

Tap the like count on a labeler's profile.

What You'll See

Header: Title reads "Liked By."

Liked-by list: A scrollable list of profile cards.

Available Actions

Same as Post Liked By.

Field Reference

This screen has no user input fields.


6.11 Profile Error State

Overview

This screen appears when a moderation service associated with a profile cannot be loaded.

Getting There

This screen appears automatically when a profile's moderation service fails to load.

What You'll See

An information icon, a message reading "Hmmmm, we couldn't load that moderation service," a description of the problem, the raw error detail in a shaded box, and a Go Back button.

Available Actions

Field Reference

This screen has no user input fields.


Chapter 7: Notifications

7.1 Activity List

Overview

The Activity List screen shows a curated list of posts associated with a specific notification event — for example, all the posts that triggered a group notification.

Getting There

Tap a grouped notification in your notification feed that links to multiple posts.

What You'll See

Header: Title reads "Notifications."

Post list: A scrollable list of posts related to the notification event.

Empty state: A pencil icon and "No posts here."

Available Actions

Field Reference

This screen has no user input fields.


Chapter 8: Starter Packs

8.1 Starter Pack Screen

Overview

A Starter Pack is a curated bundle of accounts and feeds that you can share with others to help them get started on Bluesky. This screen lets you view, follow all members of, share, edit, or delete a starter pack.

Getting There

Tap a starter pack link shared by another user, or navigate to a starter pack from the Explore screen.

What You'll See

[Screenshot: Starter Pack screen showing creator info, member list, and feeds]

Header: Shows the pack creator's avatar, the pack name, and the creator's handle. Action buttons appear on the right:

Description: The pack's description text (if provided).

Join count: If the pack has been joined by 25 or more people, a count appears showing how many people have joined.

Tabs: Up to three tabs:

Available Actions

Following All Members

Sharing the Pack

Editing the Pack (Owner Only)

Deleting the Pack (Owner Only)

Converting to a List (Owner Only)

Reporting the Pack (Non-Owner)

Field Reference

This screen has no user input fields (editing happens in the wizard).

Tips & Best Practices

Common Questions

What happens if I follow all and then change my mind? You can unfollow individual accounts from their profiles. There is no "undo follow all" option.

Why are some accounts not included in Follow all? Accounts you have blocked, muted, or already follow are automatically excluded.

Troubleshooting

Problem Cause What to Do
Pack won't load Network issue or pack was deleted Check your connection; the pack may no longer exist
Follow all fails Network issue Check your connection and try again

8.2 Starter Pack Landing Page

Overview

The Starter Pack Landing page is shown to people who arrive via a starter pack invite link before they have a Bluesky account. It introduces the pack and prompts them to create an account.

Getting There

This page is shown automatically when an unauthenticated user opens a starter pack link.

What You'll See

Branded header: The Bluesky logo, the pack name, and the creator's handle on a gradient background.

Description: The pack's description text.

Join Bluesky button: The primary call-to-action to create an account.

Join count: How many people have joined this week (shown when the count is significant).

Create account without starter pack button: An option to create an account without applying this starter pack.

People section: Up to 8 profile cards showing accounts you will follow when you join.

Feeds section: The custom feeds included in the pack.

Available Actions

Field Reference

This screen has no user input fields.


8.3 Starter Pack Wizard — Step Details

Overview

The first step of the Starter Pack creation wizard, where you give your pack a name and description.

Getting There

Tap Create a starter pack from your profile or the Starter Pack screen. This is the first step shown.

What You'll See

Branding: A Starter Pack icon and the tagline "Invites, but personal."

Name field: A text input for the pack's name. A character counter shows how many of the 50 allowed characters you have used.

Description field: A multiline text area for the pack's description.

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Pack name The title of your starter pack No (but recommended) Text; maximum 50 characters "My Tech Friends"
Description A brief description of the pack No Text "The best tech writers on Bluesky"

Tips & Best Practices


8.4 Starter Pack Wizard — Step Profiles

Overview

The second step of the Starter Pack creation wizard, where you choose which accounts to include.

Getting There

Complete Step Details and tap Next.

What You'll See

Search bar: Type to search for specific users to add.

Profile list: When no search query is active, a list of popular accounts is shown. When searching, autocomplete results appear.

Checkboxes: Each profile card has a checkbox. Checked profiles are included in the pack.

Empty state: "Nobody was found. Try searching for someone else."

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Search Find a specific user to add No Name or @handle "alice"

Tips & Best Practices


8.5 Starter Pack Wizard — Step Feeds

Overview

The third and final step of the Starter Pack creation wizard, where you choose which custom feeds to include.

Getting There

Complete Step Profiles and tap Next.

What You'll See

Search bar: Type to search for specific feeds to add.

Feed list: Your saved feeds appear first, followed by popular feeds from the network.

Checkboxes: Each feed card has a checkbox. Checked feeds are included in the pack.

Empty state: "No feeds found. Try searching for something else."

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Search Find a specific feed to add No Feed name "What's Hot"

Tips & Best Practices


Chapter 9: Onboarding

9.1 Splash Screen

Overview

The Splash screen is the first thing you see when you open the app without an active session. It presents the Bluesky logo and two options: create a new account or sign in to an existing one.

Getting There

Open the app when you are not signed in.

What You'll See

Background illustration: A themed illustration fills the screen.

Logo and wordmark: The Bluesky icon and "Bluesky" text appear centered near the top.

Create account button: A large button at the bottom of the screen.

Sign in button: A second large button below the Create account button.

Available Actions

Field Reference

This screen has no user input fields.


9.2 Login Form

Overview

The Login Form lets you sign in to an existing Bluesky account using your username or email and password.

Getting There

Tap Sign in on the Splash Screen.

What You'll See

Hosting provider selector: Shows which server you are signing in to. Tap it to change servers (for users on non-default servers).

Account section:

2FA confirmation field: Only appears if your account has two-factor authentication enabled. Enter the code sent to your email.

Error messages: Appear below the form if your credentials are incorrect.

Action buttons:

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Username or email Your Bluesky handle or registered email Yes Handle (e.g., alice.bsky.social) or email address alice.bsky.social
Password Your account password Yes Any text
2FA confirmation code One-time code sent to your email (if 2FA is enabled) Only if 2FA is enabled Code in the format sent to your email

Tips & Best Practices

Common Questions

Why do I see a "Connecting..." button instead of Sign in? The app is still connecting to the server. Wait a moment for the button to become active.

What if I forgot my password? Tap Forgot? next to the password field to start the password reset process.

Troubleshooting

Problem Cause What to Do
"Incorrect username or password" error Wrong credentials Double-check your handle/email and password
"Invalid 2FA confirmation code" error Wrong or expired code Check your email for the latest code
"Unable to contact your service" error Network issue Check your internet connection

9.3 Choose Account Form

Overview

If you have previously signed in to multiple accounts on this device, this screen lets you quickly switch to one of them without re-entering credentials.

Getting There

This screen appears automatically when you open the app and have multiple saved accounts.

What You'll See

"Sign in as..." label (web only): A label above the account list.

Account list: Each saved account appears as a row showing the account's avatar and handle. A loading indicator appears on the row of an account being resumed.

Other account option: An option to sign in to a different account not in the list.

Back button (web only): Returns to the previous step.

Available Actions

Field Reference

This screen has no user input fields.

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
Account won't resume Session expired You will be taken to the password screen — enter your password
Account not in the list Not previously signed in on this device Use the Other account option

9.4 Forgot Password Form

Overview

Starts the password reset process by sending a reset code to your registered email address.

Getting There

Tap Forgot? on the Login Form.

What You'll See

Hosting provider selector: Confirms which server your account is on.

Email address field: Enter the email address associated with your account.

Instructional text: Explains that a reset code will be sent to your email.

Error messages: Appear if the email is invalid or the request fails.

Action buttons:

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Email address The email registered to your account Yes Valid email address alice@example.com

Troubleshooting

Problem Cause What to Do
"Your email appears to be invalid" Email format is incorrect Check the email address and try again
"Unable to contact your service" Network issue Check your internet connection

9.5 Set New Password Form

Overview

The second step of the password reset flow. Enter the reset code you received by email and choose a new password.

Getting There

Complete the Forgot Password Form and receive a reset code by email.

What You'll See

Instructional text: Explains that you will receive a code by email.

Reset code field: Enter the code from your email. The expected format is XXXXX-XXXXX (10 characters with a hyphen).

New password field: Enter your desired new password (minimum 8 characters).

Error messages: Appear if the code is invalid or the password is too short.

Action buttons:

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Reset code The code sent to your email Yes Format: XXXXX-XXXXX AB123-CD456
New password Your desired new password Yes Minimum 8 characters

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
"Invalid code format" error Code is not in the correct format Check the code in your email and re-enter it
"Please enter a password" error Password field is empty Enter a new password

9.6 Password Updated Form

Overview

A confirmation screen shown after your password has been successfully reset.

Getting There

Complete the Set New Password Form successfully.

What You'll See

A "Password updated!" heading, a message confirming the change, and an Okay button.

Available Actions

Field Reference

This screen has no user input fields.


9.7 Signup Flow

Overview

The signup flow guides you through creating a new Bluesky account in three steps: entering your information, choosing a handle, and completing a verification step.

Getting There

Tap Create account on the Splash Screen.

What You'll See

The signup flow has three steps, each with Back and Next buttons at the bottom:

Step 1 — Your Information:

Step 2 — Choose a Handle:

Step 3 — Verification:

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Email address Your email for account recovery Yes Valid email address alice@example.com
Password Your account password Yes Any text
Date of birth Used to verify minimum age Yes Date January 1, 1990
Invite code Required by some servers Only if required Code provided by the server
Handle Your username on Bluesky Yes Letters, numbers, hyphens; no spaces alice

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
"Please enter your email" error Email field is empty Enter your email address
"Your email appears to be invalid" Email format is incorrect Check the email and try again
"Please choose your handle" Handle field is empty Enter a handle
Handle is not available Someone else has that handle Choose a different handle or select a suggestion

9.8 Signup Queued

Overview

During periods of high demand, new accounts may be placed in a queue before being activated. This screen shows your position in the queue and an estimated wait time.

Getting There

This screen appears automatically after account creation if your account is in a queue.

What You'll See

Logo: The Bluesky logo at the top.

"You're in line" heading.

Explanation text: Describes the queue situation.

Status card: Shows your position in the queue (e.g., "150") and an estimated wait time (e.g., "About 30 minutes") or "We will let you know when your account is ready."

Check my status button: Manually checks whether your account has been activated.

Sign out button: Signs you out if you want to come back later.

Available Actions

Field Reference

This screen has no user input fields.

Tips & Best Practices


9.9 Onboarding Wizard

Overview

After your account is activated, the onboarding wizard guides you through setting up your profile and personalizing your experience. It includes steps for profile setup, selecting interests, discovering suggested accounts, exploring starter packs, and finding contacts.

Getting There

The onboarding wizard starts automatically after your account is created and activated.

What You'll See

The wizard has multiple steps, each shown one at a time with Back and Next (or Skip) buttons:

Profile step: Set your avatar (choose an emoji and background color, or upload a photo) and display name.

Interests step: Select topics you are interested in (e.g., News, Sports, Technology). Select at least two for best results.

Suggested accounts step: Browse and follow accounts recommended based on your interests.

Suggested starter packs step: Browse starter packs and tap Follow all to follow all members of a pack.

Find contacts step (mobile only): Optionally sync your phone contacts to find people you know on Bluesky.

Finished step: A brief overview of Bluesky's key features, shown as a swipeable carousel.

Available Actions

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Display name Your public name No Text Alice Johnson
Avatar Your profile picture No Emoji + color selection, or uploaded image
Interests Topics you care about No (but recommended) Select from the provided list News, Technology

9.10 Find Contacts Flow

Overview

The Find Contacts flow (available on mobile only) lets you sync your phone contacts with Bluesky to discover people you already know.

Getting There

This flow is available during onboarding (Find Contacts step) or from SettingsFind contacts.

What You'll See

A multi-step wizard that guides you through:

  1. An introduction explaining the feature
  2. Phone number verification
  3. Viewing matched contacts

Available Actions

Field Reference

This screen has no user input fields visible at the flow level (phone number entry happens within the steps).

Tips & Best Practices


Chapter 10: Settings

10.1 Settings Home

Overview

The Settings home screen is the central hub for all application preferences and account management options.

Getting There

Tap your avatar or profile icon in the navigation, then tap Settings. Or navigate directly from the profile menu.

What You'll See

[Screenshot: Settings home screen showing profile preview and settings list]

Profile preview: Your avatar, display name, and handle appear at the top of the screen.

Account switching: If you have multiple accounts saved on this device, a Switch account section appears showing other accounts. Tap it to expand and see all accounts. Tap any account to switch to it.

Add another account: A button to sign in to an additional account.

Settings list: Navigation links to all settings sub-screens:

Sign out: A destructive button at the bottom that signs out all accounts on this device.

Available Actions

Switching Accounts

Removing a Saved Account

Navigating to Settings

Signing Out

Getting Help

Field Reference

This screen has no user input fields.

Tips & Best Practices


10.2 Account Settings

Overview

Manage your account credentials, identity, and lifecycle — including email, password, handle, birthday, data export, and account deactivation or deletion.

Getting There

SettingsAccount.

What You'll See

Email row: Shows your current email address. A shield icon appears if your email is verified. If your email is not verified, a "Verify your email" prompt appears above the update option.

Update email: Opens the email update flow.

Password: Opens the change password dialog.

Handle: Opens the change handle dialog.

Birthday: Shows your birthday with an Edit button to update it.

Age assurance: A section showing your age verification status.

Automation label: Shows whether your account is labeled as automated (bot). Tap to toggle.

Export my data: Downloads your account data as a file.

Deactivate account: Temporarily deactivates your account.

Delete account: Permanently deletes your account.

Available Actions

Verifying Your Email

Updating Your Email

Changing Your Password

Changing Your Handle

Editing Your Birthday

Exporting Your Data

Deactivating Your Account

Deleting Your Account

Field Reference

Change Handle — Server-Provided Handle:

Field Name What It Means Required? Accepted Values / Format Example
Handle Your new username Yes Letters, numbers, hyphens, underscores; no leading/trailing hyphens alice

Change Handle — Custom Domain:

Field Name What It Means Required? Accepted Values / Format Example
Domain Your custom domain Yes A domain you own alice.com

Change Password:

Field Name What It Means Required? Accepted Values / Format Example
Reset code Code sent to your email Yes Format: XXXXX-XXXXX
New password Your new password Yes Minimum 8 characters

Delete Account:

Field Name What It Means Required? Accepted Values / Format Example
Confirmation code Code sent to your email Yes Code from email
Password Your current password Yes Your account password

Tips & Best Practices

Common Questions

What is the difference between deactivation and deletion? Deactivation temporarily hides your account — you can reactivate it by signing back in. Deletion permanently removes your account and all its data.

Can I use my own domain as a handle? Yes. In the Change Handle dialog, select "I have my own domain" and follow the DNS verification steps.

Troubleshooting

Problem Cause What to Do
Can't deactivate with App Password App Passwords cannot perform this action Sign in with your main password
Handle change fails Handle may already be taken Try a different handle
Delete account fails Wrong code or password Check the code in your email and re-enter your password

10.3 Privacy and Security Settings

Overview

Manage your account's security features and control how your content is visible to logged-out users.

Getting There

SettingsPrivacy and security.

What You'll See

Email 2FA: Shows whether two-factor authentication is enabled. A button labeled Enable or Change opens the 2FA management flow.

App passwords: Shows how many app passwords you have created. Tap to manage them.

Allow others to be notified of your posts: Shows your current activity subscription setting. Tap to change it.

Logged-out visibility: A toggle to control whether your content is visible to people who are not signed in to Bluesky.

Informational note: Explains that Bluesky is an open network and the logged-out visibility setting only applies to the official app — other apps built on the AT Protocol may still show your content.

Available Actions

Enabling/Managing 2FA

Managing App Passwords

Changing Activity Subscription Settings

Toggling Logged-Out Visibility

Field Reference

This screen has no direct user input fields (controls are in sub-screens or dialogs).


10.4 Appearance Settings

Overview

Customize the visual appearance of the application.

Getting There

SettingsAppearance.

What You'll See

Color mode: Three options — System (follows your device setting), Light, or Dark.

Dark theme: Only visible when Dark or System (dark) mode is active. Two options — Dim (softer dark) or Dark (higher contrast).

Font family: Two options — System (your device's default font) or Theme (Bluesky's custom font).

Font size: Three options — Smaller, Default, or Larger.

App Icon (internal builds only): A link to change the app's home screen icon.

Available Actions

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.5 Accessibility Settings

Overview

Configure accessibility features including alt text requirements and haptic feedback.

Getting There

SettingsAccessibility.

What You'll See

Alt text section:

Haptics section (mobile only):

Available Actions

Field Reference

This screen has no text input fields.


10.6 Language Settings

Overview

Configure the language used for the app's interface, your preferred language for feed translations, and which languages you want to see in your feeds.

Getting There

SettingsLanguages.

What You'll See

App language: A dropdown to select the language for the app's interface (buttons, labels, menus).

Primary language: A dropdown to select your preferred language for automatic post translations.

Content languages: A list of checkboxes for languages you want to see in your feeds. If none are selected, all languages are shown. A Add more languages… button opens a full language selection dialog.

Informational note: When no content languages are selected, a tip explains that all languages will be shown.

Available Actions

Field Reference

This screen has no text input fields (all selections are made via dropdowns and checkboxes).

Tips & Best Practices


10.7 Content and Media Settings

Overview

Configure how content is displayed and which discovery features are active.

Getting There

SettingsContent & Media.

What You'll See

Navigation links:

Toggles:

Available Actions

Field Reference

This screen has no text input fields.


10.8 Following Feed Preferences

Overview

Customize what types of content appear in your Following feed.

Getting There

SettingsContent & MediaFollowing feed preferences.

What You'll See

Show replies toggle: When enabled, replies from people you follow appear in your Following feed.

Show reposts toggle: When enabled, reposts from people you follow appear in your Following feed.

Show quote posts toggle: When enabled, quote posts from people you follow appear in your Following feed.

Experimental section:

Informational tip: A note explaining that these settings only apply to the Following feed, not to other feeds.

Available Actions

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.9 Thread Preferences

Overview

Configure how post reply threads are displayed.

Getting There

SettingsContent & MediaThread preferences.

What You'll See

Sort replies: A segmented control with three options:

Tree view: A toggle to show replies in a nested/indented tree format (showing which reply is responding to which).

Available Actions

Field Reference

This screen has no text input fields.


10.10 External Media Preferences

Overview

Control which external media platforms are allowed to embed and autoplay content within the app.

Getting There

SettingsContent & MediaExternal media.

What You'll See

Informational banner: Explains that external media may allow websites to collect device information, and that no data is sent until you press "play."

Media player toggles: A list of supported external platforms (e.g., YouTube, Twitch, Spotify), each with a toggle. When a platform is enabled, its embedded content loads automatically. When disabled, you must tap a play button to load content from that source.

Available Actions

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.11 Interests Settings

Overview

Select the topics you are interested in to improve content recommendations throughout the app.

Getting There

SettingsContent & MediaYour interests.

What You'll See

Subtitle: "Your selected interests help us find what you care about."

Interest pills: A grid of topic pills (e.g., News, Sports, Technology, Art). Tap a pill to select or deselect it. Selected pills appear with a dark background.

Advisory tip: If you have selected fewer than two interests, a tip recommends selecting at least two.

Saving indicator: A loading spinner appears in the header while your changes are being saved.

Available Actions

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.12 App Passwords

Overview

App passwords are secondary passwords you can create for third-party Bluesky clients. They allow those apps to access your account without exposing your main password.

Getting There

SettingsPrivacy and securityApp passwords.

What You'll See

Informational tip: Explains what app passwords are and when to use them.

Add App Password button: Opens the dialog to create a new app password.

Password list: Each existing app password appears as a card showing:

Empty state: "No app passwords yet" with a list icon.

Error state: "Oops!" with an error message if the list fails to load.

Available Actions

Creating an App Password

Deleting an App Password

Field Reference

Create App Password dialog:

Field Name What It Means Required? Accepted Values / Format Example
Name A label to identify this password No (auto-generated if blank) Letters, numbers, spaces, dashes, underscores; minimum 4 characters; maximum not specified "My Favorite Client"
Allow access to direct messages Grants the app permission to read and send DMs No Checkbox (on/off)

Tips & Best Practices

Common Questions

Why can't I see my app password after closing the dialog? For security reasons, the plaintext password is only shown once, immediately after creation. If you missed it, delete the password and create a new one.

What happens if I delete an app password? Any app using that password will immediately lose access to your account. You will need to generate a new password and update the app's settings.

Troubleshooting

Problem Cause What to Do
"App password names must be at least 4 characters long" Name is too short Enter a longer name
"App password name must be unique" A password with that name already exists Choose a different name
Password list won't load Network issue Pull to refresh or tap Retry

10.13 Automation Label Settings

Overview

Add or remove a "bot" label on your account to publicly signal that it is automated.

Getting There

SettingsAccountAutomation label.

What You'll See

Profile preview card: Shows how your profile looks with or without the bot badge.

Description: Explains what the automation label does.

Show automation label toggle: A switch to add or remove the bot label.

Available Actions

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.14 Verification Settings

Overview

Control whether verification badges are shown throughout the app.

Getting There

SettingsModeration and content filtersVerification Settings (or navigate from within the Moderation section).

What You'll See

Informational tip: Explains how Bluesky's verification works differently from other platforms, with a "Learn more here" link to the official blog post.

Hide verification badges toggle: When enabled, verification badges are hidden throughout the app.

Available Actions

Field Reference

This screen has no text input fields.


10.15 Activity Privacy Settings

Overview

Control who can subscribe to receive push notifications when you post.

Getting There

SettingsPrivacy and securityAllow others to be notified of your posts.

What You'll See

Description: Explains the feature — other users can subscribe to receive notifications when you post.

Radio button group: Three options:

Available Actions

Field Reference

This screen has no text input fields.


10.16 Find Contacts Settings

Overview

Manage your phone contacts import — view matched contacts, follow them, resync, or delete your imported contact data.

Getting There

SettingsFind friends from contacts (mobile only).

What You'll See

If you have never synced contacts:

If you have previously synced contacts:

Available Actions

Importing Contacts (First Time)

Following Matched Contacts

Dismissing a Suggestion

Resyncing Contacts

Removing All Contact Data

Field Reference

This screen has no text input fields.

Tips & Best Practices


10.17 About Settings

Overview

View application information, access legal documents, and manage diagnostic tools.

Getting There

SettingsAbout.

What You'll See

Navigation links:

System log: Opens the System Log screen for diagnostic information.

Clear image cache (mobile only): Frees up storage space used by cached images.

Version information: Shows the app version and build number. Tap to copy to clipboard. Long-press to enable developer mode (for internal builds only).

Available Actions

Field Reference

This screen has no user input fields.


10.18 App Icon Settings

Overview

Change the icon displayed on your device's home screen for the Bluesky app.

Getting There

SettingsAppearanceApp Icon (available on internal/beta builds only).

What You'll See

A list of available app icon options, each shown as a preview image with the icon's name. The currently selected icon is highlighted.

Available Actions

Field Reference

This screen has no text input fields.


Chapter 11: Notification Settings

11.1 Notification Settings Overview

The Notification Settings section lets you control which events trigger notifications and how those notifications are delivered. Each notification type has its own sub-screen with consistent controls. See Notification Toggle Controls in the Common Features Guide for how these controls work.

Getting There

SettingsNotifications.


11.2 Mention Notifications

Overview

Configure notifications for when other users mention you in a post.

Getting There

SettingsNotificationsMentions.

What You'll See

Header item: "Mentions" with the subtitle "Get notifications when people mention you."

Push notifications toggle: Enable or disable device push notifications for mentions.

In-app notifications toggle: Enable or disable in-app notifications for mentions.

From filter (if available): Radio buttons to receive mention notifications from Everyone or only People I follow.

See Notification Toggle Controls for how these controls work.

Field Reference

This screen has no text input fields.


11.3 Reply Notifications

Configure notifications for replies to your posts. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people reply to your posts."


11.4 Like Notifications

Configure notifications for likes on your posts. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people like your posts." Includes a From filter (Everyone / People I follow).


11.5 Repost Notifications

Configure notifications for reposts of your posts. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people repost your posts."


11.6 Quote Notifications

Configure notifications for quote posts of your content. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people quote your posts."


11.7 New Follower Notifications

Configure notifications for new followers. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people follow you."


11.8 Reposts of Your Reposts Notifications

Configure notifications for when someone reposts a post you have reposted. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people repost posts that you've reposted."


11.9 Likes on Your Reposts Notifications

Configure notifications for when someone likes a post you have reposted. Layout and controls are identical to Mention Notifications, with the subtitle "Get notifications when people like posts that you've reposted."


11.10 Miscellaneous Notifications

Configure notifications for miscellaneous activity, specifically when someone joins Bluesky using one of your starter packs.

Getting There

SettingsNotificationsEverything else.

What You'll See

Header item: "Everything else" with the subtitle "Notifications for everything else, such as when someone joins via one of your starter packs."

Push notifications toggle: Enable or disable push notifications for this category.

Note: In-app notifications for this category cannot be disabled.

Field Reference

This screen has no text input fields.


11.11 Activity Notification Settings

Overview

Configure notifications for posts from accounts you have subscribed to, and manage your list of subscribed accounts.

Getting There

SettingsNotificationsActivity from others.

What You'll See

Header item: "Activity from others" with a description of the feature.

Push notifications toggle: Enable or disable push notifications for subscribed account activity.

In-app notifications toggle: Enable or disable in-app notifications for subscribed account activity.

Subscription list: A scrollable list of accounts you have subscribed to. Each card shows:

Empty state: If you have no subscriptions, a tip explains how to subscribe to accounts via the bell icon on their profile, with a link to Activity Privacy Settings.

Available Actions

Managing Notification Channels

Editing a Subscription

Loading More Subscriptions

Field Reference

This screen has no text input fields.


Chapter 12: Special Screens

12.1 Deactivated Account Screen

Overview

This screen appears when you sign in to an account that has been deactivated. It lets you reactivate your account, switch to a different account, or sign out.

Getting There

This screen appears automatically when you sign in to a deactivated account.

What You'll See

Logo: The Bluesky logo at the top.

Status message: Text explaining that your account is deactivated, referencing your handle.

Reactivate button: "Yes, reactivate my account" — reactivates your account.

Cancel button: Signs you out of this account.

Account list: If you have other accounts saved on this device, they appear below a divider so you can switch to one.

Sign in or create an account button: Appears if you have no other saved accounts.

Available Actions

Reactivating Your Account

Switching Accounts

Signing Out

Tips & Best Practices

Troubleshooting

Problem Cause What to Do
Reactivation fails with "Bad token scope" Signed in with an App Password Sign out and sign in with your main password
Reactivation fails with a generic error Network issue or server error Check your connection and try again

12.2 Takendown Account Screen

Overview

This screen appears when your account has been suspended by Bluesky's moderation system. It lets you appeal the suspension or sign out.

Getting There

This screen appears automatically when you sign in to a suspended account.

What You'll See

Logo: The Bluesky logo at the top.

Status message: "Your account has been suspended" with a link to the Terms of Service.

Appeal Suspension button: Opens an appeal form.

Sign Out button: Signs you out.

Appeal form (when appealing):

Confirmation (after submitting): A message confirming your appeal was submitted.

Available Actions

Appealing the Suspension

Signing Out

Field Reference

Field Name What It Means Required? Accepted Values / Format Example
Appeal reason Your explanation for why the suspension should be reviewed No Text; character limit applies "I believe this was a mistake because..."

Tips & Best Practices


12.3 List Hidden Screen

Overview

This screen appears when you try to view a list that has been hidden due to a blocking relationship or content moderation.

Getting There

This screen appears automatically when you navigate to a hidden list.

What You'll See

Icon: An eye-with-slash icon.

Heading: Either "Creator has been blocked" or "List has been hidden" depending on the reason.

Description: Explains why the list is not visible.

Action buttons (depending on your relationship to the list):

Available Actions

Field Reference

This screen has no user input fields.


12.4 System Log

Overview

The System Log is a diagnostic tool that displays the application's internal log entries. It is intended for troubleshooting and support purposes.

Getting There

SettingsAboutSystem log.

What You'll See

Log entry list: A scrollable list of log entries. Each entry shows:

Expanded entry: Tap a log entry to expand it and see its associated data in a formatted display.

Available Actions

Field Reference

This screen has no user input fields.

Tips & Best Practices


12.5 Error Screen

Overview

A generic error screen that appears when a specific part of the application encounters a problem it cannot recover from automatically.

Getting There

This screen appears automatically when an error occurs.

What You'll See

Error icon: A circle with an exclamation mark.

Title: A brief description of the problem.

Message: More detail about what went wrong and what you can do.

Error details box: Technical details about the error (useful for support).

Try again button: Attempts to reload or retry the failed operation.

Back button (if header is shown): Returns to the previous screen.

Available Actions

Field Reference

This screen has no user input fields.


Glossary

@handle — A user's public username on Bluesky, formatted as a domain-like string (e.g., alice.bsky.social). Handles can be changed; DIDs cannot.

2FA (Two-Factor Authentication) — An additional security layer that requires a code sent to your email in addition to your password when signing in.

App Password — A secondary, limited-scope password created for use with third-party Bluesky clients. Allows those apps to access your account without exposing your main password.

AT Protocol (atproto) — The open, decentralized social networking protocol that Bluesky is built on. It defines how accounts, posts, and other data are stored and shared across servers.

Automation label (bot label) — A self-applied label that marks your account as automated. Shown as a badge next to your name.

Banner — The wide image displayed at the top of a user's profile page.

BCP 47 — A standard for language tags (e.g., en for English, fr for French). Used in language settings.

Cashtag — A financial ticker symbol prefixed with $ (e.g., $BTC), used to tag posts about financial topics.

Chat request — A direct message from someone you have not yet accepted. Shown in the Inbox rather than the main Chat List.

Content languages — The languages you want to see in your subscribed feeds. Configurable in Language Settings.

Conversation — A direct message thread between you and one other person.

Custom domain handle — Using your own domain name (e.g., alice.com) as your Bluesky handle instead of a server-provided subdomain.

Deactivated account — An account that has been temporarily disabled by the user. The account's data is preserved and can be restored.

DID (Decentralized Identifier) — A globally unique, permanent identifier for a Bluesky account (e.g., did:plc:abc123). Unlike handles, DIDs never change.

Dim — A dark theme variant that is softer and less contrasted than the full Dark theme.

Discover feed — Bluesky's default algorithmic feed that surfaces popular and trending content.

Facets — Inline annotations in AT Protocol rich text that mark spans as links, mentions, or hashtags.

FAB (Floating Action Button) — The circular compose button that floats over the feed content.

Feed — A stream of posts from a specific source — your Following timeline, an algorithmic feed, or a custom feed generator.

Feed generator (feedgen) — A custom algorithmic feed created by a user or developer. Identified by a URI and subscribable by other users.

Following feed — The chronological feed showing posts only from accounts you follow.

Grapheme — A user-perceived character unit. A single emoji may consist of multiple code points but counts as one grapheme. Character limits in the app are measured in graphemes.

Handle — See @handle.

Hashtag — A word or phrase prefixed with # used to categorize posts (e.g., #bluesky).

In-app notifications — Notifications that appear within the app's notification list, as opposed to device push notifications.

Inbox — The section of the Messages area that shows pending chat requests you have not yet accepted.

Interstitial — A non-post element inserted into a feed at specific positions, such as suggested follows, trending topics, or onboarding prompts.

Known followers — Users who follow both you and another specific account — your mutual connections with that person.

Labeler — A special type of Bluesky account that provides content moderation labels. Users can subscribe to labelers to apply their moderation rules.

Left convo — A conversation that you have left (deleted). Removed from your list immediately, before the server confirms the deletion.

Lightbox — A full-screen image viewer that opens when you tap an avatar or banner image.

Live / Live Now — A feature that shows a live streaming indicator on a user's avatar when they are currently broadcasting.

Minimal shell mode — An app state where the navigation bar and header are hidden to maximize content viewing area.

Moderation decision — The result of evaluating content labels against your preferences, determining whether content should be shown, blurred, or hidden.

Mutual followers — Users who follow each other.

Newskie — An informal term for a new or recently-joined Bluesky user.

Onboarding — The multi-step setup process new users go through when first creating their account.

PDS (Personal Data Server) — The server that hosts your AT Protocol account data. You can use Bluesky's default server or a third-party server.

Pinned feed — A saved feed that appears as a prominent tab in your home screen navigation.

Post — A short message published on Bluesky, similar to a tweet.

Profile shadow — A client-side optimistic update that reflects a pending change (like a follow) before the server confirms it.

Pull-to-refresh — The gesture of pulling down on a scrollable list to trigger a data refresh.

Push notifications — Device-level notifications (banner alerts, lock screen alerts) delivered by the operating system.

Quote post — A post that embeds another post with added commentary.

rkey (Record Key) — The unique identifier for a specific record within a user's AT Protocol repository.

Repost — Sharing another user's post to your own followers without modification (similar to a retweet).

Saved feed — A feed you have added to your account. Saved feeds can be pinned (shown as tabs) or unpinned (accessible but not prominent).

Session — Your authenticated state in the app. A session remains active until you sign out or it expires.

Soft reset — An event triggered when you tap the currently active tab in the navigation bar. Scrolls the current screen to the top and refreshes the content.

Starter pack — A curated bundle of accounts and feeds that can be shared to help new users quickly populate their timeline.

Subscription (activity) — An opt-in to receive notifications when a specific account posts or replies.

Takendown — An account that has been suspended by Bluesky's moderation system.

Trending topics — Topics that are currently popular across the Bluesky network, shown in the Explore section.

Unread indicator — A small colored dot on a conversation row indicating there are unread messages.

Verification badge — A visual indicator next to a user's name showing they have been verified. Bluesky's verification system differs from other platforms.


Quick Reference Card

Most Common Tasks

Task How to Do It
Sign in Open app → Tap Sign in → Enter handle/email and password
Sign out Settings → Scroll to bottom → Tap Sign out → Confirm
Compose a post Tap the floating pencil/compose button on the feed screen
Follow someone Tap their profile → Tap Follow
Send a direct message Messages tab → Tap New chat → Find the person → Start chatting
Accept a chat request Messages tab → Tap the inbox banner → Tap Accept
Search for posts Search tab → Tap the search bar → Type your query → Press search
Search for a person Search tab → Type their name or handle → Tap People tab
Refresh a feed Pull down from the top of the list
Load new posts Tap the Load new posts floating button
Change your password Settings → Account → Password
Change your handle Settings → Account → Handle
Verify your email Settings → Account → Verify your email
Create an app password Settings → Privacy and security → App passwords → Add App Password
Change notification settings Settings → Notifications → Select the notification type
Change who can message you Messages → Gear icon → Allow new messages from
Edit your profile Go to your profile → Tap Edit Profile
Export your data Settings → Account → Export my data
Deactivate your account Settings → Account → Deactivate account
Reactivate your account Sign in → Tap Yes, reactivate my account
Create a starter pack Your profile → Starter Packs section → Create
Add recommended feeds Settings → Content & Media → Manage saved feeds
Change app language Settings → Languages → App language
Change color mode Settings → Appearance → Color mode
Enable 2FA Settings → Privacy and security → Email 2FA → Enable
Block a user Go to their profile → Three-dot menu → Block
Report content Three-dot menu on a post or profile → Report
Delete a conversation Swipe left on the conversation row → Delete

Appendix A: Source Traceability

Document Section Source Screen(s) Route(s)
Chapter 3.1: Chat List Chat List /messages/chat-list
Chapter 3.2: Inbox Inbox /messages/inbox
Chapter 3.3: Conversation Conversation /messages/conversation
Chapter 3.4: Messages Settings Settings (Messages) /messages/settings
Chapter 4.1: Search Shell Shell (Search) /search/shell
Chapter 4.2: Search Results Search Results /search/search-results
Chapter 4.3: Explore Explore, Explore Trending Videos, Explore Trending Topics, Explore Suggested Accounts, Explore Recommendations, Explore Interests Card /search/explore, /search/modules/*
Chapter 4.4: Hashtag Screen Hashtag /hashtag
Chapter 4.5: Topic Screen Topic /topic
Chapter 5.1: Feed Screen Feed /src/view/com/feeds/feed
Chapter 5.2: Saved Feeds Saved Feeds /saved-feeds
Chapter 5.3: No Saved Feeds No Saved Feeds Of Any Type /feeds/no-saved-feeds-of-any-type
Chapter 5.4: No Following Feed No Following Feed /feeds/no-following-feed
Chapter 5.5: No Feeds Pinned No Feeds Pinned /home/no-feeds-pinned
Chapter 6.1: Profile Header Standard Profile Header Standard, Display Name, Handle, Metrics, Growable Avatar, Growable Banner, Status Bar Shadow, Suggested Follows /profile/header/*
Chapter 6.2: Profile Header Labeler Profile Header Labeler /profile/header/profile-header-labeler
Chapter 6.3: Profile Followers Profile Followers /profile/profile-followers
Chapter 6.4: Profile Follows Profile Follows /profile/profile-follows
Chapter 6.5: Known Followers Known Followers /profile/known-followers
Chapter 6.6: Profile Search Profile Search /profile/profile-search
Chapter 6.7: Post Liked By Post Liked By /post/post-liked-by
Chapter 6.8: Post Reposted By Post Reposted By /post/post-reposted-by
Chapter 6.9: Post Quotes Post Quotes /post/post-quotes
Chapter 6.10: Profile Labeler Liked By Profile Labeler Liked By /profile/profile-labeler-liked-by
Chapter 6.11: Profile Error State Error State /profile/error-state
Chapter 7.1: Activity List Activity List /notifications/activity-list
Chapter 8.1: Starter Pack Screen Starter Pack /starter-pack
Chapter 8.2: Starter Pack Landing Starter Pack Landing /starter-pack/starter-pack-landing
Chapter 8.3: Wizard Step Details Step Details /starter-pack/wizard/step-details
Chapter 8.4: Wizard Step Profiles Step Profiles /starter-pack/wizard/step-profiles
Chapter 8.5: Wizard Step Feeds Step Feeds /starter-pack/wizard/step-feeds
Chapter 9.1: Splash Screen Splash /src/view/com/auth/splash
Chapter 9.2: Login Form Login Form /login/login-form
Chapter 9.3: Choose Account Form Choose Account Form /login/choose-account-form
Chapter 9.4: Forgot Password Form Forgot Password Form /login/forgot-password-form
Chapter 9.5: Set New Password Form Set New Password Form /login/set-new-password-form
Chapter 9.6: Password Updated Form Password Updated Form /login/password-updated-form
Chapter 9.7: Signup Flow State (Signup), Back Next Buttons, Policies, Captcha Web, Captcha Web View, Handle Suggestions /signup/*
Chapter 9.8: Signup Queued Signup Queued /signup-queued
Chapter 9.9: Onboarding Wizard State (Onboarding), Layout (Onboarding), Avatar Creator Items, Avatar Creator Circle, Avatar Circle, Interest Button, Starter Pack Card (Onboarding), Value Proposition Pager, Images /onboarding/*
Chapter 9.10: Find Contacts Flow Find Contacts Flow, Index.web (Find Contacts Intro), Index.web (Find Contacts) /find-contacts-flow, /onboarding/step-find-contacts*
Chapter 10.1: Settings Home Settings /settings
Chapter 10.2: Account Settings Account Settings /settings/account-settings
Chapter 10.3: Privacy and Security Privacy And Security Settings /settings/privacy-and-security-settings
Chapter 10.4: Appearance Settings Appearance Settings /settings/appearance-settings
Chapter 10.5: Accessibility Settings Accessibility Settings /settings/accessibility-settings
Chapter 10.6: Language Settings Language Settings /settings/language-settings
Chapter 10.7: Content and Media Content And Media Settings /settings/content-and-media-settings
Chapter 10.8: Following Feed Preferences Following Feed Preferences /settings/following-feed-preferences
Chapter 10.9: Thread Preferences Thread Preferences /settings/thread-preferences
Chapter 10.10: External Media External Media Preferences /settings/external-media-preferences
Chapter 10.11: Interests Settings Interests Settings /settings/interests-settings
Chapter 10.12: App Passwords App Passwords /settings/app-passwords
Chapter 10.13: Automation Label Automation Label Settings /settings/automation-label-settings
Chapter 10.14: Verification Settings Verification Settings /moderation/verification-settings
Chapter 10.15: Activity Privacy Activity Privacy Settings /settings/activity-privacy-settings
Chapter 10.16: Find Contacts Settings Find Contacts Settings /settings/find-contacts-settings
Chapter 10.17: About Settings About Settings /settings/about-settings
Chapter 10.18: App Icon Settings Index.web (App Icon Settings), Settings List Item, Settings List Item.web, App Icon Image, Types (App Icon Settings) /settings/app-icon-settings/*
Chapter 11.2: Mention Notifications Mention Notification Settings /settings/notification-settings/mention-notification-settings
Chapter 11.3: Reply Notifications Reply Notification Settings /settings/notification-settings/reply-notification-settings
Chapter 11.4: Like Notifications Like Notification Settings /settings/notification-settings/like-notification-settings
Chapter 11.5: Repost Notifications Repost Notification Settings /settings/notification-settings/repost-notification-settings
Chapter 11.6: Quote Notifications Quote Notification Settings /settings/notification-settings/quote-notification-settings
Chapter 11.7: New Follower Notifications New Follower Notification Settings /settings/notification-settings/new-follower-notification-settings
Chapter 11.8: Reposts on Reposts Reposts On Reposts Notification Settings /settings/notification-settings/reposts-on-reposts-notification-settings
Chapter 11.9: Likes on Reposts Likes On Reposts Notification Settings /settings/notification-settings/likes-on-reposts-notification-settings
Chapter 11.10: Miscellaneous Notifications Miscellaneous Notification Settings /settings/notification-settings/miscellaneous-notification-settings
Chapter 11.11: Activity Notification Settings Activity Notification Settings /settings/notification-settings/activity-notification-settings
Chapter 12.1: Deactivated Account Deactivated /deactivated
Chapter 12.2: Takendown Account Takendown /takendown
Chapter 12.3: List Hidden List Hidden /list/list-hidden
Chapter 12.4: System Log Log /log
Chapter 12.5: Error Screen Error /src/view/com/util/error
Common Features Guide 2.6: Swipe Gestures Gesture Action /src/lib/custom-animations/gesture-action
Common Features Guide 2.1: Lists Draggable Scroll, Expo Scroll Forwarder /src/view/com/pager/draggable-scroll, /modules/expo-scroll-forwarder/*
Supporting infrastructure (not user-facing chapters) Utils (Search), Form Container, State (Onboarding), State (Signup), State (Starter Pack Wizard), Types (various), Const (Post Thread), Util (Onboarding), Shared Preferences Tester, Emoji Picker, GIF View, Value Proposition Pager Shared, Images (Onboarding), Placeholder Canvas, Feed Section (Profile List), About Section (Profile List), Labels (Profile Sections), Feed (Profile Sections), Status Bar Shadow, Status Bar Shadow.web, Shell (Profile Header), Legacy Notification Settings, Video Feed (Web), Index.web (Find Contacts Intro), Index.web (Find Contacts) Various

Appendix B: Documentation Coverage

Screens Covered

All 131 screens listed in the assessment scope are covered in this document. The majority of screens are fully documented. Several screens are infrastructure or utility modules (not user-facing screens) and are noted below.

Non-User-Facing Modules

The following assessed items are code modules rather than rendered screens. They have no direct user-facing UI and are documented only where they contribute to user-facing behavior described in other chapters:

Partially Documented Workflows

Workflow Status Notes
Full notification settings navigation Fully documented All 10 notification type sub-screens are covered
Starter pack creation wizard Fully documented All 3 steps covered
Signup flow Fully documented All 3 steps covered
Onboarding wizard Fully documented All steps covered
Profile editing Fully documented Covered within Profile Header Standard chapter
Account deletion Fully documented Covered within Account Settings chapter
Custom domain handle setup Steps 1–3 could not be verified from available documentation The DNS verification steps are described at a high level; the exact DNS record format and verification timing are not confirmed
Find Contacts flow (native) Steps 2–3 could not be verified from available documentation The phone number verification and contact matching steps are handled by the FindContactsFlow component, which is referenced but not fully documented in the assessed screens
Germ DM integration Partially documented The Germ DM feature is documented within the Profile Header Standard chapter, but the Germ DM service itself is external and its full behavior is not documented

Inferred Information

The following information was inferred from technology conventions or patterns rather than being explicitly stated in the source documentation. Verification is recommended before distribution:

  1. Session timeout behavior — The documentation states sessions remain active until explicitly signed out, but does not specify whether there is an automatic timeout period. Recommendation: Verify with the product owner whether sessions expire after a period of inactivity.

  2. Maximum starter pack size — Referenced as STARTER_PACK_MAX_SIZE but the exact number is not stated in the documentation. Recommendation: Verify the exact limit with the engineering team and add it to Chapter 8.

  3. Maximum labeler subscriptions — Referenced as MAX_LABELERS and described as "twenty" in the UI copy. Recommendation: Verify this number with the product owner and confirm it matches the current limit.

  4. App password name maximum length — The documentation mentions a minimum of 4 characters but does not state a maximum. Recommendation: Verify the maximum length with the engineering team and add it to the App Passwords field reference table.

  5. Video Feed screen — The Video Feed screen (/video-feed/index.web) is documented as an unimplemented stub that renders nothing. The native implementation is not included in the assessed documentation. Recommendation: Assess the native video feed implementation and add a chapter when it is available.

  6. Settings List Item (App Icon Settings) — This component is documented as an empty stub with no implementation. Recommendation: Verify with the engineering team whether this component is intentionally empty or is a work in progress.

Recommendations for Verification Before Distribution

Priority Section WHO to Consult WHAT to Ask WHERE to Insert
High Chapter 9.7: Signup Flow The QA team lead What is the exact behavior of the CAPTCHA step on each platform (iOS, Android, web)? Are there any platform-specific differences in the verification flow? Chapter 9.7, Step 3 description
High Chapter 9.10: Find Contacts Flow The product owner What are the exact steps in the phone number verification sub-step? What happens if verification fails? Chapter 9.10, What You'll See section
High Chapter 8.1: Starter Pack Screen The engineering team What is the exact value of STARTER_PACK_MAX_SIZE? Chapter 8.1, Tips & Best Practices
Medium Chapter 1.3: Getting Started The product owner Is there an automatic session timeout? If so, how long is it? Chapter 1.3, Session Timeout section
Medium Chapter 10.12: App Passwords The engineering team What is the maximum character length for an app password name? Chapter 10.12, Field Reference table
Medium Chapter 6.2: Profile Header Labeler The product owner What is the exact value of MAX_LABELERS? Is "twenty" still accurate? Chapter 6.2, Tips & Best Practices
Low Chapter 10.2: Account Settings The engineering team What are the exact DNS record formats required for custom domain handle verification? Chapter 10.2, Changing Your Handle section
Low Video Feed The product owner When will the Video Feed feature be available? Should it be documented now or deferred? New chapter to be added when available