Posts & Feed
Posts are the primary content unit in Closegram. They support multiple media items, granular visibility, and 6 reaction types.
Each property has its own checkbox marking whether that specific piece is fully implemented and functional end to end (frontend + backend) — update these yourself as work lands; this page won't overwrite them.
- Personalized home feed (a post you just published yourself is pinned to the top of your own feed for a few minutes, so it shows up immediately)
- Comment reactions — react to comments/replies with 👍 ❤️ 😂 😮 😢 😡 (quick-tap = like, press-and-hold = picker);
reactToComment,PostComment.viewerReaction/reactionCounts. (Also fixed a bug where comment likes never persisted — wrong DB column in the interaction lookup.) - Like a post
- Comment on a post
- Repost a post
- Share a post (GraphQL mutation) — served by
repostPost(postId, text)(resolverpost.resolver.js), wired in the web viaPostCard.tsx/PostModal.tsx/ClipsPage.tsx - Share/copy a post link (native share sheet / copy link)
- Create a post with image/video
- Tag people in a post (tap-to-tag on a photo, or without a pin on a text-only post)
- Explore/discover page
- Trending posts (recent public posts ranked by engagement, a separate tab on Explore from the personalized feed)
- Content-interest tracking by tag — every view/like/comment/share/save records a per-tag interest signal (
user-interest.manager.js#trackContentTagInterest, called from the interaction/comment/saved-post/watch-history managers) that feeds Suggested content
See the technical reference for GraphQL schemas, routes, source file links, and per-field wiring status.