← All work

Web Development · CMS Design · AI-Assisted Development

Forthright Events Website

Designing and building a custom events website and admin CMS for a Philippines-based sports and events company, replacing a €160/year Squarespace subscription with a purpose-built solution that costs almost nothing to run.

Forthright Events Management
My Role
End-to-end. Information architecture, visual design, frontend development, database design, and deployment.
Tools
Claude (AI), Visual Studio Code, Supabase, GitHub Pages
Outcome
Live at Forthright website on Github ↗. The client manages all content independently through a custom admin panel.

A generic platform that didn't fit the business.

Forthright Events was running their website on Squarespace at €132 + taxes per year (nearly PHP 10,000). Beyond the cost, the platform was working against the business rather than for it.

Restricted to templates and layouts

The site was constrained by what Squarespace's templates allowed. Any design decision outside the template structure required workarounds or was simply not possible.

No events management

The upcoming and past events sections were manually updated every time something changed. Past events were moved by hand — nothing happened automatically. There was no structured data, no admin interface, just text and images edited directly on the page.

No client or event records

There was no way to associate an event with a client, no visibility into the business relationship over time, and no rolling archive of past work. When an event ended, the record of it largely disappeared.

I built something that's tailored to how the business actually works, and make it affordable to run long-term.

Old Squarespace site

Before: The original Squarespace site, restricted to templates

New Forthright site

After: Purpose-built, fully managed through a custom CMS

Design first, then build.

Rather than reaching for a CMS template, I started with what the business actually needed to manage: events with dates, venues, cover images, and photo albums; a client list with logos; and a public-facing site that reflected the brand.

I used Claude as a development partner throughout, not to generate the whole thing, but as a collaborative tool for working through architecture decisions, debugging, and iterating quickly. All code was reviewed, edited, and adjusted in Visual Studio Code, giving me direct control over every decision. This approach let me move at a pace that wouldn't have been possible working alone, while still understanding and owning every part of the codebase.

A public-facing site and a custom admin panel.

The project has two distinct surfaces:


PUBLIC SITE

A homepage with an upcoming events preview, a full events page with upcoming events grouped by month and past events in a photo card grid, and a contact form.


ADMIN PANEL

A secured CMS where the client can add and manage events (with cover image upload, venue, date range, client association, and photo album link), manage their client list with logos, and control which clients are featured on the homepage. A slide-out drawer keeps the admin in context while editing, eliminating page jumps or scroll hunting.

Forthright events page

Upcoming events are grouped by month and past events are displayed in a photo card grid

Forthright admin panel

Admin panel — Events table with sortable columns and slide-out drawer for adding and editing events

Small decisions that add up.

Events linked to clients

Events are associated with a client and not just standalone records. This means the admin can see how many events each client has had, building a record of the business relationship over time.

Event status updates automatically

Upcoming events are shown as a clean list grouped by month, making it easy for people to see what's ahead. Past events use a photo card grid, where the cover image, Facebook album link, and client logo come together to tell the story of each event. The split happens automatically based on date, no more manual intervention needed.

Photo album field only appears for past events

The Facebook album URL field is hidden in the admin form until the event date has passed. A small detail, but it removes confusion and keeps the form focused on what's relevant at the time.

Image uploads to cloud storage

Rather than requiring the client to host images elsewhere and paste URLs, cover images and client logos upload directly from the admin panel to Supabase Storage. One step instead of three.

Built for how the business actually works.

Full design control

Built from scratch in HTML and CSS — no template constraints, no layout restrictions. Every design decision is intentional and editable.

A real CMS

Events, clients, logos, venues, and photo albums are all managed from a purpose-built admin panel. The public site updates instantly — no page editing, no copy-pasting, no manual publishing steps.

A rolling record of past work

Past events are automatically archived with cover images, client associations, and photo album links — a permanent, growing record of what the business has delivered.

Cost: nearly nothing

GitHub Pages hosting is free. The custom domain costs approximately €12/year. Total running cost is over 90% less than the Squarespace subscription it replaced.

Visit Forthright's website ↗
Next project
Advise for Consumer Packaged Goods