This document outlines planned updates and feature additions for future development cycles of the Init Club Web Application.
- Target File:
src/pages/Members.tsx - Description: Rename the Members page to the Alumni Page and add hardcoded team details for past executive boards, technical leads, and alumni (following the visual presentation pattern of
TeamSection.tsxon the About Page).
- Target File:
src/pages/Events.tsx - Description: Gather complete event details, photos, write-ups, and workshop materials from the Multimedia team and construct the full public Events showcase page (integrating with
attendance_sessionsandattendance_records).
- Target Files:
src/pages/admin/MembersAdmin.tsx,src/pages/Profile.tsx,src/pages/Members.tsx - Description: The backend
userstable containsis_core_memberandis_team_leaderboolean flags that could potentially be useful in future iterations:- Maybe display visual badges/chips (e.g., "Core Member", "Team Lead") on user profiles or member directory pages if needed.
- Could be used to highlight Core Members / Team Leaders in admin member management views or team filters.
- Optionally leverage these flags for special feature access or role distinctions down the line if the club workflow requires it.
- Target Files:
src/pages/admin/MembersAdmin.tsx,src/pages/Profile.tsx,src/components/activity/Leaderboard.tsx - Description: Integrate the backend
is_activeboolean flag from theuserstable into the Admin Member Management dashboard:- Add an active/inactive status toggle switch on member cards in
/admin/membersallowing admins to deactivate or reactivate user profiles. - Automatically exclude deactivated members (
is_active = false) from public leaderboards, active member directories, and public profile lookups. - Prevent deactivated accounts from logging in or performing actions on the platform until reactivated by an administrator.
- Add an active/inactive status toggle switch on member cards in
- Target Files:
src/pages/admin/MembersAdmin.tsx,src/components/activity/Leaderboard.tsx,src/pages/Members.tsx - Description: Utilize the backend
users.team_nametext column:- Group club members into sub-teams (e.g., Frontend, Backend, Multimedia, AI/ML).
- Add team-based filter toggles on member directories and team leaderboards.
- Target Files:
src/pages/admin/AuditLogsAdmin.tsx,src/utils/auditLogger.ts - Description: Construct a dedicated
/admin/audit-logsdashboard page:- Display system audit logs recorded in the
audit_logstable. - Allow executive leads to inspect administrative action history (role promotions, score overrides, site settings updates, and whitelisting logs).
- Display system audit logs recorded in the
- Target Files:
src/pages/Home.tsx,src/pages/IdeaWall.tsx - Description: Leverage the backend
repositories.is_featuredboolean flag:- Create a "Featured Projects" carousel or top spotlight banner on the Home Page (
/) or Idea Wall (/idea-wall). - Allow admins to spotlight top-tier club open-source projects.
- Create a "Featured Projects" carousel or top spotlight banner on the Home Page (
- Target Files:
src/components/activity/Leaderboard.tsx,src/pages/Members.tsx - Description: Better showcase user bios stored in
users.bio:- Render member bios in hover tooltips or expanded member detail cards across the Leaderboard and member directories.
- Target Files:
src/components/blogs/WriteBlogModal.tsx,src/pages/Blogs.tsx - Description: Connect the
allow_public_blogsfield fromsite_settings:- Dynamically enable or disable community blog proposals based on the admin setting.
- Show a clear message on the Blogs page when public submissions are temporarily locked by admins.
Important
Personal Token Migration & Annual Expiry:
- Current State: The
GITHUB_PATconfigured in Supabase currently belongs to a personal account (Nitansh Shankar). Consequently, first-time logins/authorizations may appear to users as though a personal account is requesting access. - Resolution: Replace the token in Supabase with a
GITHUB_PATgenerated directly from the official Init Club organization account. - Annual Rotation Required: Due to Init Club GitHub organization policy restrictions, this PAT expires after 1 year and must be regenerated and updated in Supabase annually.