Skip to content

[FE-39] Community feed: frontend (bulletin board) #1235

Description

@yusuftomilola

Overview

A community bulletin board tab on the /community page where members can post updates and read posts from other hub members — a key differentiator of vibrant coworking communities.

Context

  • Community page: frontend/app/community/page.tsx (member directory from FE-09)
  • Depends on BE-45 being implemented first

Tasks

  • Add a Feed tab to the /community page alongside the existing Members directory tab
  • Feed shows posts in reverse-chronological order (pinned posts pinned at top with a 📌 indicator)
  • Each post card shows: author avatar + name, post body text, timestamp (relative, e.g. 2 hours ago), like count + like button (heart icon)
  • Write a Post button at the top of the feed → textarea modal (max 1000 chars, char counter), submit calls POST /community/posts
  • Like button: filled when liked, outline when not; clicking toggles; count updates optimistically
  • Admin can see Pin / Unpin and Delete action icons on each post
  • Create useGetCommunityFeed, useCreateCommunityPost, useTogglePostLike React Query hooks

Files to Modify / Create

  • frontend/app/community/page.tsx
  • New: frontend/components/community/CommunityFeed.tsx
  • New: frontend/lib/react-query/hooks/community/useGetCommunityFeed.ts
  • New: frontend/lib/react-query/hooks/community/useCreateCommunityPost.ts

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions