Professional Project
Jun 2025 – Sep 2026

OMNI Project Starter

Maintained and expanded OMNI's internal website infrastructure as its primary contributor, expanding on its functionaltiy with new modules and improvements that were then reused in client projects.

Project Overview

Project Starter was OMNI’s internal foundation for creating new client websites. We generated sites from a shared base that already understood our usual backend structure, administrative requirements, reusable components, database structure, and configuration.

Project Starter contains both the generator used to configure and create a new project and the runtime framework copied into generated sites, including administration, authentication, content systems, forms, navigation, integrations, and reusable frontend modules.

By June 2025, I had become the main contributor maintaining that system thinking about how reusable functionality should be configured, and how changes should be released without making existing projects harder to support.

I adopted the existing stack Project Starter was built with: PHP, MySQL, JavaScript/jQuery, HTML, and CSS, with a configurable CMS administrative layer and modular components that could be enabled or adapted per project.

Systems Worked On

Introduced a database-backed Navbar system and updated project generation so navigation could be configured as part of initial project setup rather than manually reconstructed afterward. The setup interface was later expanded to support:

  • drag-to-reorder pages;
  • custom navigation labels;
  • nested parent/child pages;
  • responsive desktop and mobile navigation;
  • reusable submenu rendering;
  • hidden navigation items with inherited visibility.

Versioning

I introduced formal version tracking for Project Starter. That later evolved into a generated project manifest recording the starter version, exact commit, generation time, and enabled features, making it possible to identify exactly what a client site was generated from as well as creating a tool to visualize differences in generated projects over time, as we have many projects created over years established using different Project Starter versions.

Event Calendar

I added a reusable event calendar system to Project Starter that included both public presentation and administrative management.

The module supported structured event data, visual calendar display, event detail information, categories, dates and times, locations, organizers, colors, images, editing, deletion, and search.

Site Schema

I built configurable Schema.org JSON-LD generation and continued to maintain broader platform improvements around Google Reviews integration, contact-form behavior, and envionment-based configuration,

Admin and Blogs

The most recent and last work I did for project starter was to add a blog system with Markdown editing, post categories, and sitemap generation. I also compeltely redesigned the admin interface to be more consistent and expanded for better usability, as well as adding systems for managing the new blogs modules. The work originally came from systems I developed while working on PGA REACH New England.

The resulting platform included:

  • refreshed dashboard, login, profile, account, and user-management interfaces;
  • reusable admin content-management patterns;
  • public blog listing and article pages;
  • Markdown authoring using league/commonmark;
  • draft and visibility controls;
  • scheduled publishing;
  • unique article slugs;
  • featured and inline image uploads;
  • automatic HTML sitemap updates;
  • automatic XML sitemap updates;
  • optional Blog navigation setup;
  • reusable sitemap-management logic.

This work was immediately useful on later projects such as Providence Auto Body, which could inherit the newer blog and administrative systems instead of requiring another custom implementation.

Reflection

Project Starter was probably the clearest example of how my role grew at OMNI.

When I began, the starter was something I used to build projects. By the end of my time there, I was responsible for maintaining it to produce measureable efficiency and quality improvements for all future projects.

It also gave me a chance to work on a system started by other devs and a one that grew over time. Continuing to maintain my existing work over a longer timescale than our client sites required me to make decisions that would affect future work, which emphasized the difference between code that works once and code that becomes infrastructure for other developers and future projects.

By the end of my time at OMNI, I can see not only how my skills in web design and as a developer had grown, but also how my responsibilities grew.

Project Summary

Key Achievements

  • •Became the main contributor responsible for maintaining Project Starter and its semantic-version releases
  • •Expanded the starter's configurable administration and modular site-generation capabilities
  • •Integrated reusable functionality developed on client projects, including event-calendar, blog, navigation, security, sitemaps, and administrative improvements
  • •Fed successful systems developed for later sites such as PGA REACH New England back into the starter so future projects inherited them

Key Challenges

  • •Improving a shared platform that existing project workflows already depended on without making future maintenance or generated sites unnecessarily fragile
  • •Deciding which project-specific solutions were genuinely reusable enough to belong in the shared starter
  • •Keeping a traditional PHP/jQuery stack maintainable as the breadth of generated site functionality continued to grow

Key Learnings

  • •Designing for reuse requires a different level of abstraction than solving a feature for one client
  • •Versioning and release discipline become increasingly important once internal code is shared across many projects over long periods of time
  • •Some of the strongest reusable systems emerge from solving real client problems first and generalizing them only after their requirements are understood