Skip to content

Commit 3962c60

Browse files
authored
Shopwired showcase (#18)
1 parent ac5c046 commit 3962c60

7 files changed

Lines changed: 117 additions & 0 deletions

File tree

public/img/showcases/case/stallen-queue.svg

Lines changed: 4 additions & 0 deletions
Loading
Lines changed: 1 addition & 0 deletions
Loading

public/img/showcases/shopwired.jpg

242 KB
Loading
99.3 KB
Loading

src/app/page.tsx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -690,6 +690,20 @@ export default function HomePage() {
690690
width="12" height="12" /></Link>
691691
</footer>
692692
</div>
693+
<div className="client">
694+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 504 117" width="200" height="46">
695+
<path d="M93.91 53.52H90.1V42.78c0-20.77-16.9-37.67-37.67-37.67s-37.67 16.9-37.67 37.67V53.2h-3.81V42.78c0-22.87 18.61-41.48 41.48-41.48s41.48 18.61 41.48 41.48v10.74zm48 40.31c-3.34 0-6.28-.54-8.8-1.63-2.53-1.09-4.55-2.59-6.07-4.52-1.52-1.92-2.43-4.15-2.73-6.68h9.79c.3 1.47 1.12 2.72 2.47 3.76 1.34 1.04 3.07 1.56 5.2 1.56 2.12 0 3.68-.43 4.67-1.29s1.48-1.85 1.48-2.96c0-1.62-.71-2.72-2.12-3.3-1.42-.58-3.39-1.15-5.92-1.71l-4.93-1.29c-1.67-.5-3.2-1.15-4.59-1.93s-2.52-1.8-3.38-3.04-1.29-2.77-1.29-4.59c0-3.34 1.33-6.15 3.98-8.43 2.66-2.28 6.39-3.42 11.2-3.42 4.45 0 8.01 1.04 10.66 3.11 2.66 2.08 4.24 4.93 4.74 8.58h-9.18c-.56-2.78-2.66-4.18-6.3-4.18-1.82 0-3.23.35-4.21 1.06-.99.71-1.48 1.59-1.48 2.66 0 1.11.73 2 2.2 2.66s3.42 1.27 5.84 1.82c2.63.61 5.05 1.28 7.25 2.01s3.96 1.82 5.28 3.26c1.31 1.44 1.97 3.51 1.97 6.19.05 2.33-.56 4.43-1.82 6.3-1.27 1.87-3.09 3.34-5.47 4.4-2.39 1.07-5.2 1.6-8.44 1.6zm24.29-.91V38.27h9.72v22.77c1.26-2.08 2.97-3.71 5.12-4.9s4.62-1.78 7.4-1.78c4.66 0 8.26 1.47 10.82 4.4 2.55 2.93 3.83 7.24 3.83 12.9v21.25h-9.64V72.57c0-3.24-.65-5.72-1.94-7.44s-3.33-2.58-6.11-2.58c-2.73 0-5 .96-6.79 2.88-1.8 1.92-2.69 4.61-2.69 8.05v19.43h-9.72zm64.22.91c-3.64 0-6.92-.83-9.83-2.5s-5.21-3.98-6.91-6.94-2.54-6.39-2.54-10.29.86-7.32 2.58-10.29c1.72-2.96 4.03-5.28 6.94-6.94 2.91-1.67 6.19-2.5 9.83-2.5 3.59 0 6.84.83 9.75 2.5s5.21 3.98 6.91 6.94 2.54 6.39 2.54 10.29-.85 7.32-2.54 10.29c-1.7 2.96-4.01 5.28-6.94 6.94-2.94 1.66-6.2 2.5-9.79 2.5zm0-8.43c2.53 0 4.73-.95 6.6-2.85s2.81-4.72 2.81-8.46-.94-6.57-2.81-8.46c-1.87-1.9-4.05-2.85-6.53-2.85-2.58 0-4.8.95-6.64 2.85-1.85 1.9-2.77 4.72-2.77 8.46 0 3.75.92 6.57 2.77 8.46 1.85 1.9 4.04 2.85 6.57 2.85zm27.93 24.22V55.27H267l1.06 5.39c1.21-1.67 2.82-3.14 4.82-4.4s4.59-1.9 7.78-1.9c3.54 0 6.7.86 9.49 2.58 2.78 1.72 4.98 4.07 6.6 7.06s2.43 6.38 2.43 10.17-.81 7.17-2.43 10.13-3.82 5.29-6.6 6.98c-2.78 1.7-5.95 2.54-9.49 2.54-2.83 0-5.31-.53-7.44-1.59-2.12-1.06-3.85-2.55-5.16-4.48v21.86h-9.71zm20.27-24.29c3.09 0 5.64-1.04 7.67-3.11 2.02-2.07 3.04-4.76 3.04-8.05s-1.01-6-3.04-8.12c-2.02-2.13-4.58-3.19-7.67-3.19-3.14 0-5.71 1.05-7.7 3.15-2 2.1-3 4.8-3 8.08 0 3.29 1 5.98 3 8.08 1.99 2.11 4.56 3.16 7.7 3.16zm35.22 7.59l-11.01-37.65h9.64l6.53 27.1 7.59-27.1h10.78l7.59 27.1 6.6-27.1h9.64l-11.08 37.65h-10.09l-8.05-28.16-8.05 28.16h-10.09zm58.74-43.5c-1.77 0-3.23-.53-4.36-1.59-1.14-1.06-1.71-2.4-1.71-4.02s.57-2.95 1.71-3.98c1.14-1.04 2.59-1.56 4.36-1.56s3.23.52 4.36 1.56c1.14 1.04 1.71 2.37 1.71 3.98 0 1.62-.57 2.96-1.71 4.02-1.13 1.06-2.59 1.59-4.36 1.59zm-4.85 43.5V55.27h9.71v37.65h-9.71zm19.88 0V55.27h8.65l.91 7.06a15.87 15.87 0 0 1 5.58-5.81c2.35-1.44 5.12-2.16 8.31-2.16V64.6h-2.73c-2.12 0-4.02.33-5.69.99s-2.97 1.8-3.91 3.42-1.4 3.87-1.4 6.75v17.15h-9.72zm47.67.91c-3.79 0-7.16-.81-10.09-2.43-2.94-1.62-5.24-3.9-6.91-6.83s-2.5-6.32-2.5-10.17c0-3.9.82-7.36 2.47-10.4 1.64-3.04 3.92-5.4 6.83-7.1s6.34-2.54 10.29-2.54c3.69 0 6.96.81 9.79 2.43s5.05 3.83 6.64 6.64 2.39 5.93 2.39 9.37a35.39 35.39 0 0 1-.04 1.75l-.12 1.9h-28.62c.2 2.93 1.23 5.24 3.07 6.91 1.85 1.67 4.09 2.5 6.72 2.5 1.97 0 3.63-.44 4.97-1.33 1.34-.88 2.34-2.04 3-3.45h9.87c-.71 2.38-1.89 4.54-3.53 6.49s-3.67 3.48-6.07 4.59-5.12 1.67-8.16 1.67zm.08-31.58c-2.38 0-4.48.67-6.3 2.01s-2.99 3.38-3.49 6.11h18.75c-.15-2.48-1.06-4.45-2.73-5.92-1.68-1.47-3.75-2.2-6.23-2.2zm44.32 31.58c-3.54 0-6.7-.86-9.49-2.58-2.78-1.72-4.98-4.07-6.6-7.06-1.62-2.98-2.43-6.38-2.43-10.17s.81-7.17 2.43-10.13 3.82-5.29 6.6-6.98c2.78-1.7 5.95-2.54 9.49-2.54 2.83 0 5.31.53 7.44 1.59s3.85 2.56 5.16 4.48V38.27H502v54.65h-8.65l-1.06-5.39c-1.21 1.67-2.82 3.14-4.82 4.4s-4.6 1.9-7.79 1.9zm2.05-8.5c3.14 0 5.7-1.05 7.7-3.15s3-4.79 3-8.08-1-5.98-3-8.08-4.57-3.15-7.7-3.15c-3.09 0-5.64 1.04-7.67 3.11-2.02 2.08-3.04 4.76-3.04 8.05s1.01 6 3.04 8.12c2.03 2.11 4.59 3.18 7.67 3.18z" fill="#003041"/>
696+
<path d="M38.29 37.44s2.45-.44 5.78 10.72S58.56 94.1 60.59 98.73c2.03 4.64 5.22 19.13 11.3 16.66 6.09-2.46 11.59-11.59 11.59-11.59l-5.04-33.67-.37-1.23-2.36-6.71-4.31-14.03C68.1 37 65.66 37.29 65.66 37.29s-27.11-.11-27.37.15z" fill="#f10257"/>
697+
<path d="M65.98 37.29s-2.46-.29-5.8 10.87C56.85 59.32 45.69 94.1 43.66 98.73c-2.03 4.64-5.22 19.13-11.3 16.66-6.09-2.46-11.59-11.59-11.59-11.59l5.21-34.19.2-.72 2.36-6.71 4.31-14.03c3.3-11.16 5.74-10.87 5.74-10.87l27.39.01z" fill="#003041"/>
698+
<path d="M2 34.56l23.38-2.37s-.38 81.32 8.3 83.5l-22.55-3.62c.01.01-8.89 3.21-9.13-77.51z" fill="#f10257"/>
699+
<path d="M102.35 34.56l-23.38-2.37s.38 81.32-8.3 83.5l22.55-3.62c-.01.01 8.89 3.21 9.13-77.51z" fill="#003041"/>
700+
</svg>
701+
<footer>
702+
<Link href="/showcases/shopwired-queue-optimization" className="button secondary small">
703+
Project Details <Image src="/img/icons/right-arrow.svg" alt="Right icon" width="12" height="12" />
704+
</Link>
705+
</footer>
706+
</div>
693707
</div>
694708
</div>
695709
</section>

src/components/showcases/ShowcasesComponent.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,9 @@ export default function ShowcasesPage() {
105105
<SwiperSlide>
106106
<Image src="/img/showcases/clients/kajabi.svg" alt="Kajabi" width="138" height="24" />
107107
</SwiperSlide>
108+
<SwiperSlide>
109+
<Image src="/img/showcases/clients/shopwired.svg" alt="Shopwired" width="150" height="45" />
110+
</SwiperSlide>
108111
<div className="portfolio-clients-title">Clients</div>
109112
<div className="swiper-pagination"></div>
110113
</Swiper>
@@ -146,6 +149,9 @@ export default function ShowcasesPage() {
146149
<span className="showcase-banner-clients-img" style={{ background: 'black' }}>
147150
<Image src="/img/showcases/clients/wo.svg" alt="WorshipOnline" width="138" height="24" />
148151
</span>
152+
<span className="showcase-banner-clients-img">
153+
<Image src="/img/showcases/clients/shopwired.svg" alt="Shopwired" width="150" height="45" />
154+
</span>
149155
</div>
150156
</div>
151157
</section>

src/showcases.tsx

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,98 @@ const showcases: Showcase[] = [
398398
description: "See how we redesigned a Ruby on Rails application with zero downtime, achieving 20% more signups and 30% revenue increase."
399399
}
400400
},
401+
{
402+
slug: "shopwired-queue-optimization",
403+
category: CategoryName.optimisations,
404+
preview: {
405+
title: "Queue Optimization",
406+
companyName: "Shopwired (Platform 21 Limited)",
407+
solution: "Background Jobs & Integrations",
408+
results: "We unblocked a completely stalled background jobs queue and eliminated daily H12 errors.",
409+
wrapperColor: SwiperSlideColor.sea,
410+
buttonColor: SwiperSlideColor.sea,
411+
companyImageSrc: "/img/showcases/clients/shopwired.svg",
412+
url: ''
413+
},
414+
body: {
415+
bannerTopTitle: (
416+
<h1>
417+
Eliminated daily <span className="oval">performance</span> bottlenecks and queue <span className="stripe">stalls</span>
418+
</h1>
419+
),
420+
bannerTopImageSrc: "/img/showcases/shopwired.jpg",
421+
bannerTopImageWebpSrc: "/img/showcases/shopwired.webp",
422+
description: "Resolved Critical Performance Issues in E-commerce Platform",
423+
descriptionText: (
424+
<p>
425+
Unblocked a completely stalled background jobs queue and <strong><i>eliminated recurring H12 errors</i></strong> on Heroku that previously occurred multiple times per day.
426+
</p>
427+
),
428+
detailsTitle: 'Queue Optimization & Integrations',
429+
detailsText: (
430+
<p>
431+
We optimized the DelayedJob queue by <strong><i>redesigning job handling and dispatching</i></strong>, fully eliminating daily performance bottlenecks and queue stalls. We also added multiple third-party integrations and fixed critical bugs in existing accounting and retail integrations.
432+
</p>
433+
),
434+
detailsImageSrc: "/img/showcases/case/stallen-queue.svg",
435+
problemText: (
436+
<p>
437+
The background jobs queue was <strong><i>completely stalled</i></strong>, holding up critical processing of third-party API calls. The application suffered from <strong><i>recurring H12 errors</i></strong> on Heroku multiple times per day, severely impacting system reliability and user experience.
438+
</p>
439+
),
440+
solutionFirstText: (
441+
<p>
442+
We performed a comprehensive analysis of the DelayedJob queue architecture and identified critical bottlenecks in job handling and dispatching. By <strong><i>redesigning the queue management system</i></strong>, we eliminated the daily performance issues and queue stalls that had plagued the platform. We implemented proper monitoring and error handling to prevent future incidents.
443+
</p>
444+
),
445+
solutionSecondText: (
446+
<p>
447+
Additionally, we expanded the platform's capabilities by <strong><i>integrating multiple third-party services</i></strong> including Etsy, TikTok, Mailchimp, Awin, and Smiffys. We also fixed critical bugs in existing integrations with accounting systems (Xero, Kashflow, Clearbooks, QuickBooks) and retail platforms (Lightspeed/Vend), ensuring seamless data flow across all connected services.
448+
</p>
449+
),
450+
resultBoxes: [
451+
{
452+
color: ResultBoxColor.green,
453+
imageSrc: "/img/showcases/case/icons/flag.svg",
454+
message: "Queue stalls",
455+
number: "0"
456+
},
457+
{
458+
color: ResultBoxColor.blue,
459+
imageSrc: "/img/showcases/case/icons/cancel.svg",
460+
message: "H12 errors",
461+
number: "-100%"
462+
},
463+
{
464+
color: ResultBoxColor.lightBlue,
465+
imageSrc: "/img/showcases/case/icons/stock.svg",
466+
message: "New integrations",
467+
number: "5+"
468+
},
469+
],
470+
resultText: (
471+
<p>
472+
The optimization work resulted in <strong><i>complete elimination</i></strong> of queue stalls and recurring H12 errors. The platform now processes background jobs reliably, and the addition of new integrations expanded the platform's e-commerce capabilities significantly. System uptime and reliability improved dramatically, providing a seamless experience for merchants and end users.
473+
</p>
474+
),
475+
helpTitle: "Need help with performance optimization and integrations?",
476+
related: [
477+
{
478+
companyName: "Worship Online",
479+
solution: "System Design",
480+
results: "We implemented an on-premises solution to combat account sharing.",
481+
wrapperColor: SwiperSlideColor.green,
482+
buttonColor: SwiperSlideColor.green,
483+
companyImageSrc: "/img/showcases/clients/wo.svg",
484+
url: ''
485+
}
486+
]
487+
},
488+
metadata: {
489+
title: "Shopwired Queue Optimization - WideFix",
490+
description: "See how we eliminated daily performance bottlenecks, unblocked stalled background jobs, and integrated multiple third-party services."
491+
}
492+
},
401493
SeoOptimization
402494
];
403495

0 commit comments

Comments
 (0)