Champion Portal Roadmap
Track the development progress of the Belmont Alumni portal. This page shows what's working and what's still in development.
Phase 1: Foundations ✓ Complete
Auth, Profile, Directory, Regional structure, Dashboard — the core identity and discovery features.
View DocumentationDatabase tables and models for Champion Portal foundations.
Features:
- Cp::Champion model with Devise integration
- Cp::ProfileChange model for CRM export tracking
- Districts and Regions with associations
- ZIP code lookup (39,305 ZIP codes → 820 districts → 7 regions)
- Geographic seed data rake task
Email-based signup, verification, login, and password reset.
Features:
- Signup with name, email, ZIP code
- Email confirmation with password setting
- Login/logout with session management
- Password reset flow
- Custom Devise mailer for champion subdomain
- Mobile-first responsive UI
Social login with Google OAuth.
Features:
- Google OAuth integration via OmniAuth
- SSO callback controller
- ZIP code prompt after SSO signup
- Profile controller for view/edit
- Multi-model Devise OmniAuth support
Profile completion wizard and Champion directory search.
Features:
- 5-step profile wizard (linear onboarding flow)
- Section-based profile editor (tabbed for returning users)
- Profile show page ('How Others See You' preview)
- Photo upload with ActiveStorage
- Affinities multi-select picker
- Privacy indicators on profile
- Education section from linked alumni record
- OAuth BUID conflict resolution
Admin verification tools in Lookup Portal for managing champion BUID linking.
Features:
- Champions namespace at /champions with portal_admin access
- Dashboard with quick stats, verification funnel, regional breakdown
- Verification Queue: approve/reject pending BUID matches
- AJAX alumni search by name, email, or BUID
- Manual BUID linking for champions without matches
- District Management in Settings > Reference Data
- 41 new tests (18 verifications + 23 districts)
Complete Staging MVP: champion dashboard, directory enhancements, activity tracking.
Features:
- Activity tracking infrastructure (cp_activity_events table)
- Cp::ActivityRecorder service for login, profile_edit, directory_search, profile_view
- 'Alumni in Your District' preview cards
- Community stats (total alumni, alumni in district)
- District-only location visibility for dashboard and directory
- Graduation Year filter (hierarchical: decades + individual years)
- College filter (from linked alumni records)
- District filter (autocomplete, reuses existing district_autocomplete_controller.js)
- Affinity typeahead UI (backend exists)
- Sort dropdown (Name A-Z, Recently Joined)
Champion-to-Champion direct messaging with smart email notifications.
Features:
- Threaded conversations (1:1 with group-ready schema)
- Message inbox with unread badges and conversation previews
- 'Send Message' button on directory profile cards
- Emoji reactions (❤️ 😂 😮 😢 😠 👍) with optimistic UI
- Smart notifications (email if unread after 5 min, background job)
- Mute and archive thread controls
- Activity tracking (message_thread_started, message_sent)
- Only verified Champions can send/receive
Champions admin dashboard with engagement scoring for staff visibility into Champion activity.
Features:
- Champions Admin Dashboard (/champions namespace)
- Searchable/filterable Champions list (name, email, verification, role, district)
- Pagination (25 per page) with sort options (signup date, last name)
- Champion detail view with activity timeline and stats
- Profile completion % calculation (10 core fields) with progress bars
- Engagement Score Service (reusable activity-based scoring)
- Engagement scoring: 5pts (login/conversation/invite), 3pts (edit/message), 1pt (view/reaction), 0.5pt (search)
- Engagement levels display (Highly Engaged/Engaged/Active/New)
- Impersonation feature ('Log in as Champion' for testing/support)
- Environment-aware routing (admin portal ↔ champion portal)
- Color-coded badges (completion %, verification status, engagement level)
- Comprehensive engagement scoring documentation with extensibility pattern
- 19 admin dashboard tests + 8 engagement score service tests
Settings, Help/FAQ, visual refresh, and language audit before beta launch.
Features:
- ✅ 1.9.1: Champion Settings page (account, connected accounts, notifications)
- ✅ 1.9.1: Email address change flow with verification
- ✅ 1.9.1: Google account connect/disconnect management
- ✅ 1.9.2: Help & FAQ page with accordion UI and real-time search
- ✅ 1.9.2: Onboarding tooltips for new Champions (4 initial tooltips)
- ✅ 1.9.3: Profile visual refresh (simplified cards, college icons, education format)
- ✅ 1.9.3: Directory card refresh (accent bar, photo focus, degree display)
- ✅ 1.9.4: Dashboard visual refresh (warmth, personalization, community feel)
- ✅ 1.9.5: Language Style Guide based on Alumni Champions Verbal Style Guide
- ✅ 1.9.5: Fixed 'prospective students' → warm alumni language in mailers
- ✅ 1.9.5: Updated empty states and flash messages for warmth
Admin-managed news/posts system with dashboard integration and regional targeting.
Features:
- ✅ 1.10.1: Database schema (posts, images, regions, views, likes)
- ✅ 1.10.2: Staff admin CRUD (Lookup Portal, global posts)
- ✅ 1.10.3: Champion-facing news views (dashboard cards, news index, detail pages)
- ⏸️ 1.10.4: CLC regional admin (deferred — CLC model evolving)
- ⏸️ 1.10.5: Engagement features (likes — deferred to Phase 2+)
- ⏸️ 1.10.6: Polish (image carousels, featured champions — deferred)
Staff-managed events system with district targeting and Champion Portal integration.
Features:
- ✅ 1.11.1: Database schema (cp_events + cp_event_districts for district targeting)
- ✅ 1.11.2: Staff admin CRUD (Lookup Portal, event management with status workflow)
- ✅ 1.11.3: Champion-facing events views (events index with filters, detail pages)
- ✅ 1.11.4: District-filtered event display (mirrors News pattern)
- ✅ 1.11.5: View counting and RSVP click tracking with activity events
- ✅ 1.11.6: Navigation integration (Events link in header)
- ⏸️ Dashboard widget (deferred to 1.12 layout update)
- Note: External RSVP links only (no built-in RSVP in MVP)
Database schema, models, and basic UI for emergent communities.
Features:
- ✅ 1.12.1: Database schema (cp_communities, cp_champion_communities, cp_community_suggestions)
- ✅ 1.12.2: Cp::Community model with 6 community types
- ✅ 1.12.3: Suggestion model and CommunityMatchingService
- ✅ 1.12.4: Profile update hooks (auto-suggest on profile changes)
- ✅ 1.12.5: News/Events community targeting
- ✅ 1.12.6: Admin Communities UI (Lookup Portal)
- ✅ 1.12.7: Champion Community UI (My Communities, join/leave, suggestions)
Champion-facing community browsing and enhanced landing pages.
Features:
- ✅ 1.13.1: Community show page with members, news, events
- ✅ 1.13.2: Communities index (My Communities + Suggestions + Explore All)
- ✅ 1.13.3: Dashboard 'My Communities' widget (replaced Community Snapshot)
- ✅ 1.13.4: Navigation updates (Communities | Directory | Messages | Name)
- ✅ 1.13.5: Testing & polish (1661 tests, 0 failures)
Background detection and creation of emergent communities when 3+ champions share an attribute.
Features:
- ✅ 1.14.1: CommunityDetectionService (threshold checking)
- ✅ 1.14.2: CommunityCreationJob (background processing)
- ✅ 1.14.3: CommunityNotification model + migration
- ✅ 1.14.4: Dashboard notification banner for new communities
- ✅ 1.14.5: Detection triggers (verification, profile wizard, profile edit)
- ✅ Testing: 55 new tests, 1716 total suite tests
Community images, force creation, membership management, message link previews.
Features:
- ✅ 1.15.1: Community Image Upload (hero + thumbnail with drag/drop)
- ✅ 1.15.2: Force Create Communities (admin creation from any attribute)
- ✅ 1.15.3: Expanded Membership Management (join requests, admin member tools)
- ✅ 1.15.4: Message Link Previews & Sharing (community cards, invite flow)
In-app notifications with bell icon, email digests, and user preferences.
Features:
- ✅ 1.16.1: Database & Models (cp_notifications, cp_notification_preferences tables)
- ✅ 1.16.2: NotificationService with smart aggregation for high-volume types
- ✅ 1.16.3: Navbar UI (bell icon dropdown, mark read, clear all)
- ✅ 1.16.4: Settings Integration (per-type preferences in Settings page)
- ✅ 1.16.5: Email Digests (daily/weekly via NotificationDigestJob)
- ✅ 1.16.6: NotificationCleanupJob (removes old read notifications)
Phase 1C: Role Selection & Quiz ✓ Complete
Champion Role in Profile Wizard and Quiz Integration — champion identity features.
View DocumentationExtract quiz/role logic from signup helper into reusable services.
Features:
- ChampionRoleService (role definitions, colors, narratives)
- ChampionQuizService (questions, scoring, results)
- Update ChampionSignupsHelper to delegate to services
- Cp::ChampionRolesHelper for portal
- 42 comprehensive tests (24 role + 18 quiz)
Add Champion Role step to profile wizard with optional quiz.
Features:
- champion_role step in wizard (step 2 of 6)
- Role selection with 4 role cards (emoji, title, description)
- 'Take the Quiz' button for 7-question quiz
- Full quiz flow with progress indicator
- Quiz results page with personalized narrative
- 'Skip for now' option
- 7 new integration tests
Allow champions to change role and retake quiz from profile edit.
Features:
- Champion Role section in profile edit sidebar
- Current role display with colored card
- 'Retake Quiz' and 'Choose different role' options
- Context-aware quiz navigation (returns to correct page)
- Simplified name fields with toggle for legal name
- Clean data architecture (no duplicate name storage)
Phase 2: Community Leadership ✓ Complete
CL role assignment, permission system, and staff action items — enabling Champions to lead communities.
View DocumentationUpdate ClcAssignment to link to Community instead of Region.
Features:
- Migration: add community_id to clc_assignments
- Migration: remove region_id, add unique constraint
- Model associations and validations updated
- Test fixtures updated for new structure
Enable Lookup Portal admins to assign Champions as Community Leaders.
Features:
- CL assignment list (filterable by community type, search)
- Contextual assignment from champion detail or community detail
- Multi-select: assign champion to multiple communities at once
- Multi-select: assign multiple verified members as CLs for a community
- Membership enforcement: CLs must be members of the community
- Remove CL assignments with confirmation
- CL count indicator on community index
- CL badge and 'Assign as CL' links in community member list
- 21 controller tests for full coverage
Granular permission flags for staff access control.
Features:
- Permission flags: can_portal_admin and can_support_respond
- Role badges in user list (Staff/Admin + Portal Admin/Support)
- Permission toggles in user edit page
- Backward compatible with existing portal_admin role
- 19 controller tests for permission system
Bell icon with pending action items for staff.
Features:
- Bell icon in navbar with badge count
- Permission-filtered action items
- Support requests, champion verifications, new signups
- Communities needing leaders, new communities, CRM pending
- Priority count (support + verifications) vs dot for other items
- ActionItemsService with 9 tests
- Engagement score visible in CL assignment page
- CL assignment notification (email + in-app)
Phase 3: Discussion Boards ✓ Complete
Per-community boards and national forum — enabling threaded community discussions.
View DocumentationDatabase structure for boards, posts, and comments.
Features:
- 8 database tables: board_posts, board_comments, board_reactions, post_flags, user_blocks, hidden_contents, moderation_actions
- 7 models with ActionText, enums, validations, scopes
- Read-only boards controller with index/show actions
- National 'Alumni Champions' community (auto-join for verified Champions)
- Discussions section on community show page
- Activity events: board_view, post_view
- 112 new tests (96 model + 16 controller)
Browse boards, create posts, and comment.
Features:
- New post form (title 100 char, body 40K char, optional image)
- Post truncation with 'See more' on listing
- Threaded comment replies (MAX_DEPTH=2)
- Edit/delete within 30-minute window + 'Edited' indicator
- Community Guidelines reminder in composer
- Discussions in community index featured cards
- 9 new FAQ entries for Discussions
- 20 new controller tests for BoardCommentsController
Emoji reactions and popularity sorting.
Features:
- Emoji reactions on posts and comments (6 options)
- Horizontal emoji bar UI (Messages pattern)
- Popularity score with 14-day decay
- Hot Discussions section (max 2) on discussion index
- Popular discussions on dashboard/community views
- Activity tracking for reactions
Champions can protect themselves from unwanted content.
Features:
- Report/Flag content (posts and comments)
- Flag reason selector (spam, inappropriate, harassment, off-topic, other)
- Hide content from my view only
- Block user (hides all their content, prevents messaging)
- Blocked user notifications filtered from dropdown and count
Community Leader and staff moderation tools.
Features:
- CLC: Hide/unhide content
- CLC: Lock/unlock posts (prevent comments)
- CLC: Pin/unpin posts
- CLC: Escalate to Engagement Team
- CLC: Moderation queue with pending flags only
- Staff: Discussions admin interface (/champions/discussions)
- Staff: View escalated, all, hidden, deleted content
- Staff: Resolve escalations
- Staff: Action items dropdown integration (flagged + escalated counts)
- Moderation counts synced across Leadership index, community dashboard, queue
Global discussion space with auto-join for all verified Champions.
Features:
- 'Alumni Champions' national community with national: true flag
- Auto-join all verified Champions on verification
- Cannot leave national community (permanent membership)
- Per-community notification muting in Settings → Notifications
- Hidden from non-verified Champions
- Main nav link and community integration
- Popular national posts surfaced on dashboard
- News/events without community assignment default to National Board
- Community Leaders can pin posts to national board
Discussion-specific notifications and email digests.
Features:
- Notification triggers: replies, reactions, community posts
- In-app notifications in dropdown with unread badge
- Email digest notifications (daily/weekly configurable)
- Discussion-specific notification types: discussion_reply, discussion_reaction, community_post
- User preferences for email frequency (immediate, daily, weekly, off)
- Blocked user notifications filtered from counts/display
- Email digest templates with activity summary
- Heroku Scheduler jobs for digest generation
Staff dashboard for monitoring discussion board activity.
Features:
- Lookup Portal → Insights → Discussion Boards tab
- Key metrics: posts, comments, active discussers, pending flags
- Trends: Posts/comments per week with sparkline charts
- Community breakdown: Top 5 communities by activity
- Moderation stats: Flags by status (pending/resolved/dismissed)
- Period selector: This Week/Month/Quarter/All Time
- EngagementStats::DiscussionBoardsService for metrics calculation
- Pending flags count links to moderation queue
- 45+ tests for service and controller
Public preview pages for shareable links and signup conversion.
Features:
- Public event pages for global and public community events
- Public discussion post pages for public community posts
- Public community landing pages with activity metrics
- Reusable _public_cta_box.html.erb component
- Return path storage for post-signup/login redirect
- MetaTagsHelper for rich Open Graph/Twitter Card previews
- public_display_name method (FirstName L. format)
- Help page publicly accessible (moved to footer)
Redesign content index pages with Google News-style layouts.
Features:
- News Index: Featured + compact card layout
- Events Index: Upcoming events with Google News layout
- Events: Past Events page with Load More pagination
- Discussions Index: Cross-community /discussions route
- Compact partials: _news_card_compact, _event_card_compact, _discussion_card_compact
- Event row partial with date badge styling
Redesign dashboard with Google News-style content sections.
Features:
- Discussions section: 1 featured + 3 compact cards
- News section: 1 featured + 3 compact cards
- Events section: Date badge rows with community pills
- Communities card: CL indicator (⭐) + Leadership Dashboard button
- Community show page: Restructured with Google News layouts
- Community index: Redesigned as 'Community Select' page
- Layout: Background opacity, footer visibility, consistent max-w-7xl widths
Phase 4: Mobile-First Interface Cleanup ✓ Complete
Polish pass for mobile consistency, design alignment, and UX improvements before MVP launch.
View DocumentationReview and fix all views for mobile-first compliance.
Features:
- Bottom nav overlap fixed globally (pb-20 sm:pb-0)
- Profile wizard button visibility fixed
- Touch targets verified (44px minimum)
- Thumb-friendly navigation verified
- No horizontal scrolling on content
Apply DESIGN-GUIDELINES.md patterns consistently.
Features:
- Consistent button styles across views (w-full sm:w-auto)
- Uniform card margins standardized
- Back link partial created and standardized
- Consistent pill navigation for profile/settings
- Collapsible directory filters on mobile
Final polish including image variant sizing.
Features:
- Event list card redesign with 8:5 aspect ratio
- Image variant sizing audit (7 files fixed)
- Dashboard mobile column reordering
- Hero section heights reduced
- Long text truncation fixed
- scroll_to_selected_controller.js for auto-scroll
Phase 5: Pre-MVP Updates ✓ Complete
Final features for MVP launch — user experience polish, non-alumni support, friending, photo albums.
View DocumentationPolish user experience for different verification states and anonymous visitors.
Features:
- Anonymous landing page at alumnichampions.com
- Champion/city count social proof
- Navigation access controls (browse vs act strategy)
- Community suggestions protected for verified only
- Community show page eligibility messaging overhaul
Almost Alumni and Faculty/Staff can become Champions with appropriate fields and verification workflows.
Features:
- ✅ Membership type enum (alumni, almost_alumni, faculty_staff)
- ✅ Almost Alumni fields (anticipated_program, anticipated_college_code, anticipated_graduation_date)
- ✅ Faculty/Staff fields (work_email, profession, affiliated_college_code, affiliated_program)
- ✅ Signup wizard education step with membership-type-specific fields
- ✅ Verification queue support for Almost Alumni and Faculty/Staff
- ✅ Directory filters by membership type (Alumni default, filters for others)
- ✅ Profile display: badges, anticipated education for Almost Alumni
- ✅ Profile display: profession/affiliation for Faculty/Staff
- ✅ Directory cards show anticipated education for Almost Alumni
Save Champions as contacts for quick access and prioritized content.
Features:
- ✅ Add/remove contacts from profile, directory, messages
- ✅ Contact button with icon states (filled/outline user icon)
- ✅ Mutual contact indicator (amber highlight when both add each other)
- ✅ Contacts page (/contacts) with search and grid layout
- ✅ Email + in-app notification when added as contact
- ✅ Privacy enforcement: contact visibility respects email_privacy settings
- ✅ Counter cache for unread messages/notifications (badge performance)
- ✅ Login drift correction for unread counters
- ✅ Message privacy precomputation in controller (query optimization)
Suggest similar Champions based on shared attributes.
Features:
- ✅ AlumniLikeMeService with multi-factor scoring algorithm
- ✅ Scoring: College (+20), Major (+25), Grad Year (+15), Industry (+15), Affinities (+10)
- ✅ 'Champions Like You' section on Directory (no filters, first page)
- ✅ Match reason badges on recommendation cards
- ✅ Dashboard 'Champions You Might Know' carousel (6 cards, touch scroll)
- ✅ Profile completion prompt when <50% complete
- ✅ Activity tracking: recommendation_viewed event
Champions and events can have photo galleries.
Features:
- ✅ Cp::PhotoAlbum & Cp::Photo models with Active Storage
- ✅ Champion admin: album CRUD, drag-drop uploads, photo management
- ✅ Champion Portal: /photo-albums index and detail pages
- ✅ Lightbox component with keyboard/swipe navigation
- ✅ Dashboard featured photos carousel
- ✅ Event page photo gallery (grouped by album)
- ✅ Activity tracking: photo_album_viewed event
- ✅ 33 controller tests passing
Phase 6: Reporting & Insights
Analytics dashboards for Community Leaders and staff — proving program ROI.
View DocumentationTrack and display key activity metrics.
Features:
- ✅ Total/active Champions counts (MetricsService)
- ✅ Daily activity trends chart
- ✅ Searches, messages, profile views, logins
- ✅ Top connectors table
- ✅ Recent activity feed
- ✅ CSV export for detailed metrics
- Time period filters (quick select + custom range)
Monitor engagement health per community.
Features:
- ✅ District breakdown table (MetricsService)
- Formal health scores (composite metric)
- Heat map visualization
- Inactive community alerts
- CL assignment recommendations
Generate and export reports for presentations.
Features:
- ✅ CSV export (champions, communities, boards)
- Report templates with branding
- PDF export for presentations
- Scheduled email reports
Phase 7: Career Center ✓ Complete
Self-serve career hub with downloadable resources, curated links, career events, and OCPD partnership.
View DocumentationPublic Career Center page with resources, quick links, career events, and OCPD section.
Features:
- ✅ Public /careers page (no login required)
- ✅ Career resource data model (cp_career_resources table)
- ✅ Resource categories: Getting Started, Career Advice, Networking, Follow-Up
- ✅ Quick links grid (Handshake, LinkedIn Learning, Indeed, Glassdoor)
- ✅ Career events section (events with career_event flag)
- ✅ OCPD partnership section (consultations, resume review, workshops)
- ✅ Sign-up CTA for unauthenticated visitors
- ✅ Career Center in top-level navigation (desktop + mobile)
- ✅ Activity tracking: career_center_view event
PDF download functionality and admin CRUD for career resources.
Features:
- ✅ Download endpoint with counter tracking
- ✅ Staff admin: create/edit/delete career resources
- ✅ PDF upload with Active Storage (drag/drop via pdf_dropzone_controller)
- ✅ Resource search, category filter, status filter
- ✅ Toggle active/inactive (soft remove)
- ✅ Activity event: resource_downloaded
Career event tagging in admin and career center analytics.
Features:
- ✅ Admin event form: career_event checkbox
- ✅ Career Center analytics dashboard (views, downloads, trends)
- ✅ Period filtering (7d/30d/90d/All Time)
- ✅ Career events scope and display
- ✅ Activity event: career_center_view
Phase 8: Notifications & Digests Consolidation ✓ Complete
Unified notification system with consolidated daily/weekly digests.
View DocumentationUnified notification preferences in Settings.
Features:
- Consolidated settings page with all notification types
- Frequency selector (Immediate, Daily Digest, Weekly Digest, Off)
- Per-type toggle organization
- Clear section headers (Messages, Communities, Discussions)
Notification triggers for discussion board activity.
Features:
- Reply to your post notification
- Reply to your comment notification
- Reaction to your content notification
- New post in community notification (CL opt-in)
- In-app notification dropdown integration
Background jobs for digest generation and delivery.
Features:
- Cp::NotificationDigestJob with daily/weekly modes
- Heroku Scheduler configuration
- Monday guard for weekly digests (Heroku daily-only workaround)
- Admin weekly digest bug fix (was running daily)
Dedicated templates for time-sensitive notifications.
Features:
- Join request approved/denied emails
- Verification pending/approved emails
- Support reply notifications
- Community Leader assignment email
- Removed from Settings UI (always immediate)
Phase 9: Onboarding & Initial User Experience ⚡ In Progress
Streamlined first-run experience with progressive disclosure and guided setup.
View Documentationjoin_communities wizard step with community suggestions.
Features:
- Community suggestions based on degrees, location, affinities
- Suggestion cards with icon, name, member count, reason
- Join and decline buttons with AJAX updates
- Step skipped automatically if no suggestions
- Smart step insertion after profile completion
Staff-seeded discussion questions that rotate across community boards to spark engagement.
Features:
- Cp::SeededQuestion model with targeting (global, community_type, affinity_category)
- Cp::SeededQuestionExposure tracking for rotation/cooldown logic
- SeededQuestionSelector service with weighted selection algorithm
- SeededQuestionPublisher service with template interpolation
- 30-day rotation cooldown and max 2 active per community
Lookup Portal admin interface for managing seeded discussion questions.
Features:
- Full CRUD for seeded questions at /champions/seeded_questions
- Filtering by status/target_type and search by title/body
- Preview panel with template variable interpolation
- Activate/deactivate actions for question lifecycle
- Exposure history tracking with community/date details
Analytics to measure onboarding effectiveness.
Features:
- ✅ Signup funnel tracking (email submitted → verified → password created)
- ✅ Wizard completion metrics (started, step viewed/completed/skipped)
- ✅ Seeded question metrics (community suggestions accepted/declined)
- ✅ Admin dashboards at /champions/insights/onboarding and /seeded_questions
- ✅ Period filtering (7d, 30d, 90d, all time)
Auto-generated welcome content for community boards.
Features:
- ✅ WelcomeContentGenerator service with template selection by community type
- ✅ 15 welcome pack templates in config/welcome_packs.yml
- ✅ Markdown-to-HTML conversion using Redcarpet gem
- ✅ Dismissible welcome panel UI with Stimulus controller
- ✅ Member tracking (view count, dismissed_at) for auto-dismissal
- ✅ 7 rake tasks for content management (generate, preview, status, clear, reset)
- ✅ Comprehensive test coverage (26 tests)
Multi-email drip campaign for new Champions.
Features:
- Welcome email (Day 0, immediate)
- Profile nudge (Day 2, skip if complete)
- Directory introduction (Day 5, skip if searched)
- Community engagement (Day 10, skip if posted)
- Event participation (Day 15, skip if registered)
- 30-day check-in (Day 30, always send)
- Skip logic for conditional delivery
- Admin progress visibility in Lookup Portal
Allow community discovery pre-verification. Verification unlocks contribution, not belonging.
Features:
- Wizard community step shown to unverified champions
- District/industry/affinity suggestions without verification
- College/major suggestions with BUID linkage or invitation
- Community pages viewable pre-verification
- Directory and messaging require verification
- Content read-only until verified (news, events, discussions, photos)
- Verification teaser messaging for gated contribution features
Phase 10: Connections ✓ Complete
Relationship-first communication: connection requests, structured outreach, and rate-limited messaging.
View DocumentationCore tables, champion connection preferences, settings UI.
Features:
- cp_connection_requests table (requestor, requestee, type, message, status)
- cp_connections table (canonical pair, linked thread, connected_at)
- Connection preferences on champion (types, weekly cap, pause, almost-alumni toggle)
- Connection Settings UI in Champion Settings page
Send, receive, accept, ignore, and cancel connection requests.
Features:
- Connect button on profiles with request modal
- Connection type selector + freeform message
- Rate limiting: 10/day requestor, configurable weekly requestee cap
- Requests tab with incoming/sent sub-tabs
- Accept, Ignore (silent), Cancel actions
- Notifications for new requests and acceptances
Transform Messages into Connections with two-tab inbox.
Features:
- Rename Messages to Connections in navigation
- Two-tab layout: Requests + Connections
- Gate messaging behind accepted connections (support exempt)
- Connection thread header with type badge and connected date
- Disconnect flow with re-request capability
Surface connection availability in Directory and Profiles.
Features:
- Directory filter: Open to (connection type multi-select)
- Subtle open-to-connect indicator on directory cards
- Profile connection section with types and Connect button
- Quick-access settings link on Connections page
Migrate mutual contacts to connections, remove Contacts system.
Features:
- Rake task: mutual contacts become Connections with threads
- Remove Add to Contacts button and ChampionContact model
- Replace My Contacts directory filter with My Connections
- Update compose modal to use connections endpoint
- Remove contact_added activity/notification types
- Update privacy settings labels to connection language
- Update AlumniLikeMeService to use connected_champion_ids
Staff visibility into connection program health.
Features:
- Connection Analytics page with overview cards, daily trends chart, and period filtering
- Request status breakdown (accepted/pending/ignored/cancelled) with acceptance rate
- Connection type breakdown with horizontal bar visualization
- Super-connector leaderboards (Most Connected, Most Active Requestors, Most Welcoming)
- Per-champion connection stats in admin detail view (connections, requests, acceptance rate, type breakdown)
- Average response time calculation with smart unit display
- Sidebar nav link for Connection Stats under Analytics section
Phase 11: Champion Role Dashboard Card ✓ Complete
Daily role-aligned idea packs on the dashboard, roles landing page, and admin CRUD for role ideas.
Content model, seed data, and pack generation service.
Features:
- Cp::RoleIdea model with role, target, status, priority, template interpolation
- Cp::RoleIdeaPack and Cp::RoleIdeaPackItem models for daily pack persistence
- RoleIdeaPackService with weighted random selection, anti-repeat window, timezone awareness
- 115 seed ideas across all roles authored from canonical source documents
- Rake tasks for seeding, stats, and old pack cleanup
Dashboard card with State A (no role) and State B (role selected) variants.
Features:
- State A: Discover Your Role quiz CTA for champions without a role
- State B: Daily idea pack with primary + secondary ideas and CTAs
- Community Leader variant: mixed pool of role + CL-specific ideas
- Turbo Stream refresh endpoint for 'Try different ideas' button
- 6 new activity event types for role card interactions
Public roles page and staff management interface.
Features:
- Roles page showing all 4 Champion roles with source document descriptions
- Admin CRUD with filtering by status/role/target, search, and pagination
- Activate/deactivate/archive status management
- Admin sidebar link with active count badge
Phase 12: Source-Alignment Review ✓ Complete
Full audit of Champion Portal user-facing text against 20 canonical source documents. Inclusivity framing, copy alignment, and vocabulary standardization.
9 string replacements and 3 email template rewrites for source-aligned copy.
Features:
- Invitational CTAs replacing transactional language (Sign Up → You're Invited)
- Warm registration heading (Become a Champion → Welcome Home, Bruin)
- Community vocabulary replacing system/platform/network language
- Confirmation, verification, and invite emails rewritten with belonging-first tone
- Inclusivity framing: external = alumni/Bruins, internal = Champion as celebration
FAQ, empty states, flash messages, landing page, and wizard copy.
Features:
- FAQ 'portal' → 'community' (8 replacements)
- 15 empty states rewritten with warmth and CTAs
- 8 flash messages warmed (sign-in/out, boards, communities)
- Landing pillars renamed: Belong / Gather / Inspire (identity arc)
- Gatekeeping messages softened (access-denied experiences)
- Wizard header and connections step copy refined
- No platform proper noun — 'your community' / 'your alumni community'
This roadmap is only visible on staging and development environments.
💡 Feature Backlog
Ideas we're considering for future development. Priority and timing TBD based on Champion feedback and engagement data.
Alumni Business Directory
HighChampions list their businesses for 'hire a Bruin' discovery.
Native Mobile App
HighiOS/Android apps with push notifications.
Newsletter Tool
MediumStaff-curated newsletters with fixed + community content sections.
Real-Time Messaging
MediumWebSocket-based instant messaging with typing indicators.
Map View
MediumVisual map of Champions across the country with clustering.
Advanced Search
MediumCombined filters, saved searches, 'Champions like me' recommendations.
Visit Mode
LowTemporarily view another community's content without changing primary.
Have an idea? Share it with the Engagement Team!