Skip to content
Higher Education

FanProfile: Why a Faculty Directory Gets Its Own App, Not a CMS Page Type

A public faculty directory has a different audience, traffic shape, and permission model than a CMS admin panel. FanProfile is its own REST API for exactly that reason.

H
Hamze Zare Nasiri
September 16, 2026
FanProfile: Why a Faculty Directory Gets Its Own App, Not a CMS Page Type

A public faculty directory has a different job than a CMS admin panel — so give it a different app

A university CMS handles editors, drafts, approvals, and access control for staff who log in constantly. A public faculty directory handles anonymous visitors, search, and read-heavy traffic that spikes whenever a course catalog goes out. Bolting the second job onto the first as "just another content type" works until the traffic patterns and the failure modes start fighting each other. FanProfile is its own Django REST Framework service, decoupled from the CMS that manages everything else.

Why the traffic shape alone justifies a separate app

A public directory is read-heavy and spiky — a semester start, a press mention, a prospective student searching by department can all send a burst of anonymous read traffic. A CMS's admin side is write-heavy but low-volume, from a small number of logged-in editors. Serving both from one application means either over-provisioning for the admin side's rare peaks or under-provisioning for the public side's real ones — a dedicated REST API for profiles can be scaled, cached, and rate-limited on its own terms.

What the separation actually looks like

  • A clean permission boundary — public profile data (name, photo, publications, department) is read-only and anonymous by design; there's no path from a directory search into an editor's session.
  • Search and filter as first-class features, not an afterthought bolted onto a generic CMS search box — by name, department, or research field, because that's the entire point of the app.
  • Department structure as real data, not a tag — browsing by college and department reflects how a university actually organizes people, not how a CMS's category taxonomy happened to be set up.

The general lesson

"It's just another page type" is the right call for genuinely similar content. A public-facing directory serving a completely different audience, traffic pattern, and permission model than the CMS around it usually isn't that — it's a different job wearing the same domain name, and it earns its own service.

FanProfile

A university faculty directory microservice — decoupled, fast, and easy to keep current.

View product

Share This Article