Community Vote Tracker Admin

Completed

Nov 2024 - Feb 2025 (4 months)

Community Vote Tracker Admin is the web control surface for PMAC operators to manage communities, users, invitations, and account-level operations.

It extends the same backend ecosystem as mobile/API with browser-first route guards, session handling, and admin workflow tooling built in Next.js.

Built with: Next.js 14, React 18, NextAuth (credentials/JWT sessions), Tailwind CSS, HeroUI, framer-motion, and Axios.

Project Activity

Recent updates for Community Vote Tracker Admin. Completed

February 2025

  • Environment-driven API addressing (`NEXT_PUBLIC_API_ADDRESS`) normalized across auth callbacks and PMAC actions.
  • Shared async UX standardized with common loading-modal patterns and uniform success/error handling.
  • Invite-acceptance/registration path implemented using invitation-code + community-context bootstrap parameters.

January 2025

  • Forgot-password login path wired to PMAC reset endpoint with email validation and toast feedback states.
  • Change-password module completed with token-expiry handling and secure sign-out fallback behavior.
  • Add PMAC User flow added with validated identity/contact/password fields and authenticated provisioning calls.

December 2024

  • PMAC users module shipped: user search, selected-user context, and guarded admin-status updates (self-change blocked).
  • Create-community workflow shipped with strict field validation, state/position selectors, and invite-on-create payloads.
  • Community-list module implemented: search/select UX, status updates, and invite-user PMAC API submissions.

November 2024

  • PMAC App Router shell stabilized (`pmac/layout`, navbar, sidebar drawer) with role-driven menu visibility.
  • Middleware route-guarding added for `/pmac/*` with admin-aware redirects for unauthenticated/non-admin paths.
  • NextAuth credentials flow integrated; JWT/session claims mapped with PMAC community metadata.

Objective Link to heading

  • Build a browser-based PMAC administration portal for Community Vote Tracker with secure login, role-aware navigation, and operational screens for community and PMAC-user management.
  • Reuse backend PMAC APIs while preserving session continuity, route protection, and consistent validation/feedback behavior in web workflows.

Implementation path Link to heading

  • Bootstrapped a Next.js App Router project and integrated NextAuth credentials-based authentication.
  • Implemented PMAC layout shell (navbar/sidebar) plus middleware-driven route guarding for authenticated/admin-only sections.
  • Built core PMAC modules: community list/update/invite, create community, PMAC users listing/admin status updates, add PMAC user, and password change.
  • Added invite acceptance, registration, and reset-password related screens and shared loading/toast UX patterns.
  • Wired environment-based API address usage and session token forwarding for backend PMAC operations.

Real-world challenges addressed Link to heading

  • Keeping PMAC session claims and role flags synchronized between NextAuth tokens, middleware, and screen-level behavior.
  • Handling token-expiry/Access Denied responses gracefully while preserving secure admin boundaries.
  • Building dense admin forms with strong field validation without breaking operator workflow speed.
  • Shipping functional parity with PMAC backend endpoints despite no commit-history timeline in the local repo snapshot.