All projects
J

Client · WordPress · Web

Client Project

Julli Jets

A commercial private-charter website built for a client on WordPress and Elementor, with a custom PHP page-generation layer I wrote.

Client-confidential project: source code and internal implementation are not published. This case study covers my engineering contribution, the problem solved and the technologies used.

My Role
Freelance Web Developer
Timeline
Ongoing client relationship
Year
Client engagement
Status
Client Project
WordPressElementorPHPJavaScript

Role

Freelance developer engaged directly by the client for design, build and ongoing support: sole developer on the engagement.

Scope

Delivered all 14 pages of the live site (homepage, private jets, helicopter, yacht, empty legs, charter request, about, contact, FAQs, careers, blog, privacy, terms) and built the PHP tooling that generates them.

Engineering depth

A page-generation library of composable widget and section builders (HERO, SECTION, CTA_BANNER, FEATURE_ROW and similar) driven by shared design-token constants, plus a save path that correctly escapes Elementor's JSON so pages don't silently corrupt.

Overview

Julli Jets is a commercial charter company offering private jets, helicopters and yachts. I worked directly with the client to gather requirements and translate their business needs into a responsive, professional customer-facing website on WordPress and Elementor.

This is client-confidential work: the case study focuses on the business objective, my engineering contribution and the technologies used, rather than internal source or proprietary content.

Business problem

A charter brand needed a site that felt premium, loaded well, and gave customers a clear route to enquire, across a large set of pages (aircraft types, empty legs, charter requests, contact) that needed to share a consistent design language.

As a client engagement, the work also had to fit real constraints: a defined scope, ongoing content updates, and a non-technical stakeholder who needed to see progress clearly.

Key achievements

  • A live, professional charter website the client uses as their primary customer-facing presence.
  • A maintainable design system that makes site-wide changes fast rather than page-by-page.
  • An ongoing client relationship spanning deployment, content and usability work.

Engineering challenges

Keeping many pages visually consistent

As the page count grew, hand-editing invited drift. Moving the design into reusable, code-level builders kept every page consistent and fast to update.

Elementor's JSON is fragile

A missing element ID, wrong element type, or unescaped character breaks the visual editor with no error message. Routing every write through one validated save function, instead of raw writes per page, eliminated that class of bug entirely.

Translating a non-technical brief into a build

Regular direct communication with the client turned an informal brief into a concrete, professional site.

Technology stack

Platform

WordPressElementor

Engineering

PHP page-generation layerDesign tokensJavaScript

Delivery

Managed hostingSFTP/SSH deployResponsive design
Technical deep dive: architecture, database, engineering decisionsFor technical reviewers

Requirements

Requirements

  • A premium, responsive design across a large set of pages.
  • Structured content and clear enquiry functionality.
  • A maintainable way to keep the design consistent as pages were added.
  • Ongoing support for deployment, content and usability changes.

Solution

The solution

I gathered requirements directly with the client, then designed, developed and deployed a professional, responsive site with structured content and enquiry functionality on WordPress/Elementor.

To keep the growing page set consistent, and given the client's ongoing content-update needs rather than a one-off build, I made a deliberate tradeoff: invest upfront in a PHP layer of reusable design-token constants and section/widget builders that compose Elementor layouts programmatically, rather than hand-editing each page. That upfront cost pays back every time the design changes or a page is added.

I've continued supporting the client with deployment, content updates and usability improvements as requirements evolve.

Architecture

System architecture

A WordPress/Elementor site whose visual design is defined in a shared PHP library (design tokens, widget builders, section builders) rather than hand-tuned per page. Shared chrome (header, footer, global CSS) and a custom booking flow live outside the generated page content. Deployment is via SFTP/SSH to the client's managed hosting.

Loading diagram…
High-level system architecture

Features

Key features

Responsive, premium design

A polished, mobile-friendly layout matching a luxury charter brand.

Consistent design system

Design tokens and reusable builders keep colour, type and spacing consistent as pages are added.

Enquiry & booking functionality

Structured content with a clear charter-request enquiry flow.

Ongoing client support

Continued deployment, content updates and usability improvements.

Engineering

Engineering decisions

Direct client requirements work

Translated business needs into a responsive site through direct client collaboration.

Reusable builders over hand-editing

A shared PHP library of section/widget builders keeps the growing page set visually consistent: an upfront investment traded against faster one-off page edits.

Correct JSON escaping on save

A single save function applies WordPress's slashing rules correctly before every write, since Elementor's page data is JSON stored as post meta. Get that wrong and the visual editor breaks silently with no error.

Managed hosting deployment

Deployed and maintained on the client's managed WordPress hosting.

Interface

Screenshots

Julli Jets homepage hero
The charter homepage on desktop.
Julli Jets empty legs listing
The empty-legs listing.
Julli Jets charter request form
The charter-request enquiry flow.

Reflection

Lessons learned

01

Direct, regular client communication matters as much as the code for a commercial engagement.

02

Investing in a small design-system layer pays for itself the moment a site grows past a handful of pages.

What's next

Future roadmap

  • Continued support for the client's evolving content and feature requirements.