Feed & Content
The feed section is the core social experience of Honeycomb. It includes the main timeline, content discovery, saved items, draft management, stories, and the single-post detail view.
Route map
Section titled “Route map”| Route | File | Description |
|---|---|---|
/feed | (app)/feed/+page.svelte | Main social feed timeline |
/explore | (app)/explore/+page.svelte | Discover content and trending posts |
/post/[id] | (app)/post/[id]/+page.svelte | Single post detail with comments |
/bookmarks | (app)/bookmarks/+page.svelte | User’s bookmarked posts |
/drafts | (app)/drafts/+page.svelte | Unpublished draft posts |
/stories | (app)/stories/+page.svelte | Stories feed |
/stories/[userId] | (app)/stories/[userId]/+page.svelte | View a user’s stories |
/notifications | (app)/notifications/+page.svelte | Activity notifications |
All routes are protected and require authentication plus completed onboarding.
Feed (/feed)
Section titled “Feed (/feed)”The main feed is the default landing page for authenticated users (AUTHENTICATED_REDIRECT = "/feed"). It displays a reverse-chronological timeline of posts from followed users and suggested content.
Key behaviors
Section titled “Key behaviors”- Post creation happens inline at the top of the feed
- Infinite scroll pagination via the
/api/feedendpoint - Posts support text, images, video, polls, and link previews
- Each post shows reactions, comments, bookmarks, and share actions
- The feed API route lives at
(app)/api/feed/
Related API routes
Section titled “Related API routes”| API route | Purpose |
|---|---|
(app)/api/posts/ | Create a new post |
(app)/api/posts/[id]/ | Update or delete a post |
(app)/api/feed/ | Paginated feed data |
(app)/api/reactions/ | Add/remove reactions |
(app)/api/bookmark/ | Toggle bookmark on a post |
(app)/api/polls/ | Create and vote on polls |
(app)/api/link-preview/ | Fetch Open Graph data for URLs |
(app)/api/stories/ | Create and manage stories |
Explore (/explore)
Section titled “Explore (/explore)”The explore page shows trending and recommended content the user has not seen. It helps users discover new accounts and posts outside their follow graph.
Single post (/post/[id])
Section titled “Single post (/post/[id])”The post detail page renders a full post with its complete comment thread. The +page.server.ts fetches the post by ID along with author profile data, reactions, and nested comments.
Dynamic parameter
Section titled “Dynamic parameter”[id]— The post’s UUID, passed asparams.idin the server load function.
Bookmarks (/bookmarks)
Section titled “Bookmarks (/bookmarks)”Displays all posts the user has bookmarked, loaded via a server-side query filtering the user’s bookmark records. The bookmark toggle is powered by the (app)/api/bookmark/ endpoint.
Drafts (/drafts)
Section titled “Drafts (/drafts)”Lists posts the user has saved as drafts (not yet published). Drafts can be edited and published from this view.
Stories (/stories)
Section titled “Stories (/stories)”Stories are ephemeral content (images/short video) that expire after 24 hours. The stories feed shows circles for users who have active stories. Tapping a circle opens the fullscreen story viewer.
/stories— The stories feed showing all active stories from followed users./stories/[userId]— Fullscreen viewer for a specific user’s story sequence.
Notifications (/notifications)
Section titled “Notifications (/notifications)”Displays the user’s notification history — follows, likes, comments, mentions, and system alerts. The unread count badge in the sidebar is powered by data from the (app)/+layout.server.ts load function.
The notification list endpoint at (app)/api/notifications/list/ provides paginated data, while (app)/api/notifications/ handles marking notifications as read.