feat(platform): add membership management system with profiles and admin dashboard

Open
#1,916 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
postgresql, react, tailwindcss, typescript

Research direction

No files, tests, or entry points are named. Start with sub-issue #1917 and follow #1918 through #1921 in the stated order, reviewing the existing React and TypeScript app first; the work is done when authentication, profiles, the admin dashboard, and site integration meet the listed requirements.

Written by the indexing model from the issue text.

Description

Summary

Build a membership management system where community members can create accounts, sign in, and manage rich profiles, and where leadership has an admin dashboard for analytics, member management, and trend visualization.

Sub-Issues (Implementation Order)

  1. #1917 — Database schema & infrastructure (NeonDB + Drizzle ORM)
  2. #1918 — Authentication (WorkOS integration, RBAC)
  3. #1919 — Member profiles (public pages, edit flow, directory)
  4. #1920 — Admin dashboard (analytics, member management, audit log)
  5. #1921 — Site integration (nav updates, auth UI, profile linking)

Tech Stack

  • Auth: WorkOS (User Management API, SSO/SAML for institutions)
  • Database: NeonDB serverless Postgres
  • ORM: Drizzle ORM with Drizzle Kit migrations
  • Frontend: React 19 + TypeScript 6 + Tailwind CSS 4 (existing app)
  • Charts: Recharts or @visx for admin analytics
  • Storage: S3-compatible (profile photo uploads)

Requirements

Authentication & Accounts
  • WorkOS integration (SSO, email/password, social login)
  • Member registration with email verification
  • Role-based access: member, admin (board/staff)
  • Session management and secure sign-out
Member Profiles (GH + LinkedIn style)
  • Profile photo, name, pronouns, bio
  • Institution and role/title
  • Links: GitHub, LinkedIn, ORCID, personal website
  • Research interests / tags
  • Working group and affinity group memberships
  • Public profile page + edit interface
Admin Dashboard
  • Member directory with search, filter, sort
  • Growth analytics with data visualizations
  • Add/remove members, edit roles
  • Export member data (CSV)
  • Audit log of admin actions
Dominant language
HTML
Stars
33
Forks
104
Avg merge
12h 3m
Merged PRs (30d)
10

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from USRSE/usrse.github.io

All issues in USRSE/usrse.github.io

Similar issues

More Data Visualization issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.