Back to Projects

IPN Member Portal

Replaced a fragmented member experience with one purpose-built platform for a community spanning 2,100+ members across 70+ countries.

Published
Jul 2026
Role
Product Strategy, Product Design, Solution Delivery
Skills
Product StrategyProduct ManagementProduct DesignProject Management
Tools
CodexNext.jsGitHubNetlifySupabaseResend

Overview & Problem Statement

IPN has a strong, mission-driven membership base that has grown to over 2,000 members across 70 countries, but its member experience was scattered across email, Discord, Zoom events, Eventbrite events, and our website, without a clear way to engage with IPN and other members. IPN needed a more streamlined member experience, from registration and onboarding through ongoing engagement.

Solution

Following a buy-vs-build decision, we chose a greenfield web application built with Next.js, hosted on Netlify, with data stored on Supabase, serving as IPN's home for everything IPN: events, member-exclusive resources, a member directory, and a community platform. We planned the launch before IPN's annual conference to capture the window of greatest traffic and organizational visibility.

Implementation Details

  1. End-to-end member experience workshop: a multi-session E2E member experience workshop surfaced key gaps in the member experience and the need for a single interface for IPN events and resources.
  2. Built a weighted decision matrix: scored three paths (greenfield Next.js + Supabase, Circle.so, and Mighty Networks) across eight dimensions: cost, build time, maintenance (time and cost), customizability, feasibility, long-term maintainability, and intrinsic reward.
  3. Wrote the requirements & timeline: brainstormed and prioritized greenfield build requirements in Notion, then scoped a phased plan where every week ships something, with a Week-4 fallback to a branded waitlist if progress stalled.
  4. Established a GitHub repository & collaboration plan: partnering with our membership growth & outreach coordinator, we set a phased plan to complete requirements, commit to a shared GitHub repo, and submit and review pull requests before production deployment.
  5. Stood up the data layer (Supabase): built the backend on Supabase, a Postgres database storing member profiles, events, RSVPs, resources, and directory data as a single source of truth, with authentication and row-level security so each member only accesses what they should.
  6. Connected a branded domain: used IPN's existing Squarespace domain to point a members. subdomain at the Netlify deployment, giving the portal a branded home at members.intercollegiatepsychedelics.net.
  7. Branded, transactional email (Resend): integrated Resend for branded authentication emails (email verification and password reset) and event RSVP notifications and confirmations, with a roadmap to expand Resend into engagement email (friend requests, and alerts when new events or resources are posted) to drive ongoing member activity.
  8. Launch plan: devised a launch plan with our media team, including a member portal launch video shared to socials and replayed during the conference intermission, and highlighted it in our monthly member newsletter.
  9. Analytics & feedback: implemented instrumentation and analytics to monitor membership growth, background, needs, and platform utilization after launch for ongoing improvements. Feedback modals throughout each page let members submit feedback directly to leadership via a Slack webhook.

Features (V1)

  • Events Registry: browse past and upcoming events, RSVP in one click, add events to your calendar, and join the event-specific WhatsApp community.
  • Member Directory: find members who share your interests and area through both a list view and an interactive globe view, and connect directly with peers across the network.
  • Member Resources: member-exclusive discounts, the IPN Blog, and information on IPN's partners and sponsors.
  • WhatsApp Community: link your IPN member profile to a WhatsApp account to join the community for announcements, event-specific chats, and direct connections with other members from inside the portal.
  • Onboarding Modal & Checklist: a guided onboarding flow that helps new members complete their profile and take their first actions in the portal.
  • More to come: conference tracking, a job portal, member-submitted community events, and more.

Outcomes & Impact

  • One home replacing four-plus scattered surfaces: onboarding, a persona-searchable member directory, events, and resources.
  • $0/month recurring cost, which keeps the full nonprofit budget available for programming and partnerships.
  • Live v1 deployed on time at members.intercollegiatepsychedelics.net.
  • 50+ members registered within the first week, with plans to scale registrations after v1.1 to optimize for monthly active users (MAU).

Lessons Learned

  • Product mindset & vision. This project pushed me to think like a product manager, designer, and engineer at once, meshing all three into a single role. The platform strategy started by connecting the product's design and offerings directly to IPN's mission (to empower, connect, and develop the next generation of psychedelic professionals) and to where we're headed next: the portal becomes the infrastructure to eventually put select offerings behind a paywall with tiered pricing and benefits. That framing drove meticulous product-design choices about which features to surface directly in front of a member, and how to optimize their first touch points with the platform right after onboarding.
  • Dev collaboration in a shared repo. This was my first time collaborating in a shared GitHub repo, and it showed me how much dev collaboration depends on planning and organization. Keeping the repo clean was essential to preventing errors, so we held to a clear process: build locally off a branch, QA locally (via agent loops and manual testing), open a pull request for my collaborator to review, then merge to main. We also set up Slack notifications that fired when a PR was opened and when a merge landed, so both of us stayed in sync without manual check-ins.

Links