Skip to content
CK/SYSTEMS
Back to Macquarie College
live fullstack

🏫 ICT Portal

Payload CMS-based central hub for ICT department content and administration

Role

Lead Developer

Timeframe

2024 - Present

Stack

Next.js React TypeScript Payload CMS Lexical Tailwind CSS

Overview

The central content management system for the ICT department, built on Payload CMS 3. It serves as the administrative hub and data backend for several other apps in the monorepo — managing structured content, user accounts, and file assets through a customised admin interface.

Key Features

  • Lexical rich text editor — Payload’s Lexical-based editor with custom blocks for structured content authoring
  • Custom collections — Tailored Payload collections for department-specific data (announcements, resources, processes)
  • Google Auth integration — Staff sign in with school Google accounts via the shared auth package
  • GraphQL API — Auto-generated GraphQL API for programmatic access from other apps (e.g. Misadventure Portal, Docs)
  • File and media management — Upload and organise images, documents, and attachments from the admin panel
  • MCP plugin integration — Model Context Protocol plugin for AI-assisted content workflows

Role

Acts as the data backend for several other monorepo apps. The Misadventure Portal reads and writes request data through Payload collections, and the Docs app sources structured content from the portal’s API.

Design Decisions

  • Why Payload CMS 3: Payload 3 runs inside a Next.js app, so it fits the monorepo stack without requiring a separate deployment or service. It’s TypeScript-native and code-first — collections are defined in TS files, which version-control cleanly and integrate directly with mc-rbac access control functions. Alternatives like Strapi need a separate server process, Sanity requires proprietary hosting, and WordPress would be a completely different stack. Payload provides a production admin panel, auth, file management, and a GraphQL/REST API without leaving the TypeScript ecosystem.
  • MCP plugin: Model Context Protocol lets AI tools access Payload collections as structured context. In practice, a developer or staff member using an AI assistant can query CMS content directly — useful for drafting announcements, summarising stored data, or answering questions about portal content without manually copying it into a prompt.

Demo

ICT Portal: centralised content management and admin tools for the department.

Outcomes

  • Centralised content management for ICT department
  • Administrative tools accessible from a single portal

Need a workflow like this shipped properly?

Send the workflow, bottleneck, or delivery problem. I will tell you whether it fits a governed workflow audit, starter build, or implementation sprint.

Request consulting
Newsletter

Short notes on building AI agents in production.

One email when something worth sharing ships. No fluff, no daily cadence, no recycled growth-thread noise.

Primary use: consulting updates, governed AI workflow lessons, and major project writeups.