4 min read

Kushstar.ca: Full-Stack E-Commerce Migration & Optimization

Kushstar.ca: Full-Stack E-Commerce Migration & Optimization
Splash Screen

Overview

Kushstar.ca represents a complete rebrand and technical overhaul of kushstarpapers.com, a struggling WooCommerce site held together by 50+ plugins, hardcoded inline styles, and the limitations of shared hosting.

The project began with an unconventional introduction: I approached the founder, Marc, while he was photographing products in a public park in Le Plateau, Montreal. A year of iterative design and technical problem-solving later, the new site launched with dramatically improved performance, maintainability, and user experience.

Technical Challenge: Learning WordPress at Scale

I entered this project with minimal WordPress experience. Rather than treating this as a limitation, I approached it as an opportunity to demonstrate my proclivity for adapting to novel challenges and ability to learn new technologies.

Over the course of development, I:

  • Architected a custom WooCommerce implementation optimized for the client's specific product catalog and workflow
  • Mastered WordPress hooks, filters, and the plugin ecosystem
  • Developed basic competence with PHP for custom functionality where off-the-shelf solutions fell short

This wasn't about becoming a "WordPress developer", it was about proving I could rapidly acquire domain expertise in unfamiliar systems and deliver production-ready solutions under real business constraints.

Architecture Decisions: Prioritizing Long-Term Maintainability

Theme Selection & Builder Strategy

I spent significant time evaluating WordPress themes and page builders, weighing technical elegance against practical business needs. The decision matrix included:

  • Performance vs. flexibility tradeoffs across popular builders
  • Maintenance burden for a non-technical client post-handoff
  • Long-term viability and ecosystem support

I ultimately selected Breakdance Builder despite its occasional friction during development. The rationale was simple: site builders provide a visual interface that empowers clients to make content updates independently, without engineering support for every minor change. While working within a stateful builder's constraints can be frustrating for a developer who preferes the determinism of code, the business value of client autonomy outweighed the short-term development friction.

This decision reflects a principle I apply across projects: the best technical solution is the one that aligns with the client's operational reality, not just the one that's most elegant to build.

Systems Engineering: Debugging Plugin Conflicts

The WordPress plugin ecosystem's strength, extensibility, is also its weakness: incompatibilities between plugins are common and often poorly documented.

During integration, I encountered critical conflicts between WooCommerce extensions, caching layers, and theme functionality. Rather than abandoning plugins or forcing the client to compromise on features, I:

  1. Isolated the conflict sources through systematic disable/enable testing and error log analysis
  2. Wrote custom must-use plugins (mu-plugins) that act as compatibility shims between conflicting components
  3. Implemented selective hook priorities and filter overrides to resolve load-order dependencies

These mu-plugins serve as lightweight intermediary layers, intercepting problematic behavior and ensuring smooth interop without modifying vendor code. This approach maintains update compatibility while delivering stable functionality.

This work demonstrates a core engineering competency: when systems don't integrate cleanly, build the abstraction layer yourself.

Performance Optimization: Video Asset Pipeline

The site's design called for high-quality video backgrounds, a UX decision that posed significant performance challenges. Serving unoptimized video files would have destroyed load times and mobile usability.

I implemented a complete video optimization pipeline:

  1. Sourced and processed royalty-free video assets using FFmpeg
  2. Optimized encoding parameters for web delivery (webm conversion, appropriate bitrate caps, resolution scaling)
  3. Hosted assets in a cloud storage bucket with CDN-like delivery characteristics
  4. Implemented lazy-loading strategies to defer video initialization until viewport entry

The result: cinematic visual experience with minimal performance penalty. Page load times remained under 2 seconds on 4G connections.

Infrastructure: Self-Managed VPS Hosting

Rather than relying on managed WordPress hosting, I deployed the site on a Hetzner VPS with a custom-configured environment. This decision was driven by:

  • Cost efficiency at scale (managed hosting premiums add up)
  • Full control over server configuration, caching layers, and security hardening
  • Automated backup strategy using Hetzner's snapshot system combined with off-site redundancy

I configured the entire stack: Nginx reverse proxy, PHP-FPM optimization, MySQL query caching, and server-level security policies. While managed hosting would have been simpler, self-managing infrastructure gave me direct control over performance tuning and cost optimization, and demonstrated comfort operating at the systems level.

Data Migration: Custom Scripting for Legacy Cleanup

The original site contained years of accumulated data inconsistencies: malformed product metadata, orphaned database entries, broken image references, and incompatible schema structures from previous migrations.

I developed custom migration scripts to:

  • Parse and normalize product data from the legacy database
  • Reconcile image references and re-associate media files
  • Transform old taxonomy structures into the new site's information architecture
  • Validate data integrity at each migration stage

The process involved extensive trial and error; debugging edge cases in poorly documented legacy data formats, handling character encoding issues, and resolving foreign key mismatches. While the specifics were complex and varied, the throughline was consistent: write scripts to automate the tedious, then manually verify the critical.

Outcome

The relaunched Kushstar.ca delivers:

  • 10x performance improvement over the legacy site
  • Client-maintainable content system requiring zero developer intervention for routine updates
  • Stable, scalable infrastructure with automated backups and monitoring
  • Professional brand presentation aligned with the business's growth trajectory

More importantly, this project demonstrates the skillset that defines effective full-stack engineering: the ability to learn unfamiliar technologies quickly, make pragmatic architectural decisions, debug complex integrations, and deliver production systems that solve real business problems.

Landing Page
About Page
Shop Page
Cart Page
Checkout

Technologies: WordPress, WooCommerce, Breakdance Builder, PHP, MySQL, Nginx, FFmpeg, Hetzner VPS, Linux (Ubuntu), Cloud Storage / CDN Integration

More Posts
Copyright © 2025 Tao Gaetz. All rights reserved.