UCI Sports Business Association Website

Student org website for the UC Irvine Sports Business Association, powered by Contentful CMS

AngularTypeScriptContentfulRxJSFullCalendarBootstrap 3Moment.js
www.ucisba.kevinnorgaard.com
UCI Sports Business Association Website screenshot

01Problem Statement

The UCI Sports Business Association had no centralized web presence — event announcements, speaker archives, membership info, and officer profiles were scattered and required developer involvement to update. Officers needed a platform that non-technical members could maintain through a CMS, with an event calendar that could display both upcoming and past speakers and a newsletter integration to grow their membership funnel.

02Architecture

A centralized Angular content service decouples all page data from the codebase — homepage sections, membership rates, event listings, exec board profiles, and alumni directory entries are all fetched from Contentful at runtime via the Delivery API. This means officers can publish changes without any redeployment. FullCalendar renders events with toggleable upcoming/past views, and Mailchimp handles newsletter subscriptions directly from the site.

03Data Model

Contentful CMS

type Image {
  fileName: String!
  url:      String!
}

type ExecBoardMember {
  name:     String!
  role:     String!
  semester: String!
  bio:      String
  photo:    Image
  linkedIn: String
}

type Event {
  title:        String!
  date:         DateTime!
  type:         String   # "upcoming" | "past"
  speaker:      String
  speakerPhoto: Image
  location:     String
  description:  RichText
  recordingUrl: String
}

type AlumniEntry {
  name:           String!
  graduationYear: Int!
  company:        String
  role:           String
  linkedIn:       String
  photo:          Image
}

type HomepageSection {
  sectionKey: String!    # "hero" | "about" | "membership"
  heading:    String
  body:       RichText
  ctaLabel:   String
  ctaUrl:     String
}