Retail and eCommerce Case study

Prime Scuba: Magento store and product manager

primescuba.com

A Magento redesign and re-platform of the Prime Scuba dive-gear store, plus a CakePHP product information manager that queues catalogue changes and pushes them to Magento.

Prime Scuba: Magento store and product manager: website
Client
Prime Scuba
Service
eCommerce, Web apps, Integrations
Years
2012–2017 (5 years)
Stack
MySQL, Magento, Magento web service API, PHP and 11 more
Platforms
Web

Overview

Prime Scuba sells scuba diving equipment online. We moved its store to Magento with a new responsive design, a custom checkout and a faster, cached storefront, and built a separate web app for managing the catalogue. The app holds products with their colour, size and style variations, brands, suppliers, categories, size charts and attributes, and sends them to the store through a queue-based Magento connector. We worked on the store and the app between 2012 and 2017.

The challenge

Dive gear comes in many variants, brands publish size charts, and products point to accessories and related items. The catalogue had to be kept in one place and reach the Magento store without being retyped, while the store itself needed a new design, a smoother checkout and faster pages.

What we built

  1. A redesign and re-platform of the store to Magento: home, category, product, cart and checkout pages converted from design to responsive, cross-browser HTML and CSS, then integrated as a Magento theme with sliders and menus
  2. A mobile-responsive theme, new account and content pages, gift card functionality, and holiday banners and email templates
  3. Store features such as a custom quote module, an AJAX mini-cart, a one-page checkout, product page enhancements and a promotional gift extension
  4. Payment methods including Google Checkout, Amazon Checkout and PayPal, with fraud screening
  5. Performance work: minified CSS and JavaScript, image loading, and Varnish and Memcache caching
  6. On-page SEO: page analysis, meta tags and fixes for paginated pages
  7. Reviews, live chat and Google Shopping modules, security patches and a server migration
  8. A CakePHP admin web app for the catalogue: a searchable, paged items list with inline price edits, condition flags and expandable variations
  9. A tabbed item editor (vital info, configurable items, offer, images, description, keywords and more details) with Quick Create of colour, size and style variations
  10. Drag-and-drop image upload, recommended-accessory and also-viewed pickers, special prices that expire automatically, stock labels and inventory filters
  11. Supplier, brand and category management, brand size charts, specification templates and attribute management
  12. A queue-based Magento connector with an id map and audit log, creation of custom attributes in Magento, and CSV import scripts for products and linked products
  13. The web app interface design, with static HTML mock-ups

How a system like this fits together

Reference architecture: product information manager feeding a Magento store

Simplified reference architecture, not a client schematic.

Reference architecture: product information manager feeding a Magento storeZones from left to right: clients (the catalogue team and the shoppers), the application (the CakePHP admin web app), data (MySQL), background jobs (the CSV import scripts and the sync connector) and the Magento store (its web service API and the storefront). Full description in the numbered list below the diagram.ClientsClientsApplicationDataBackground jobs (async)Magento storeeditsavequeuequeue, logweb service APIcataloguebrowse, buyCatalogue teamBrowser screens,jQuery AJAXShoppersDesktop and mobilestorefrontAdmin web appCakePHP (PHP): items, brands,suppliers, categories, attributesMySQLCatalogue, sync queue,id map, audit logCSV import scriptsPHP: bulk-load products andlinked productsSync connectorQueue-based: categories,attributes, productsMagento web service APIReceives cataloguefrom the connectorMagento storefrontTheme, checkout, payments,Varnish and MemcacheReference architecture: product information manager feeding a Magento storeZones from left to right: clients (the catalogue team and the shoppers), the application (the CakePHP admin web app), data (MySQL), background jobs (the CSV import scripts and the sync connector) and the Magento store (its web service API and the storefront). Full description in the numbered list below the diagram.ClientsApplicationDataBackground jobs (async)Magento storeeditsavequeuequeue, logweb service APIcatalogueCatalogue teamBrowser: jQuery AJAX screensShoppersDesktop and mobile storefrontAdmin web appCakePHP (PHP): items, brands,suppliers, categoriesMySQLCatalogue, sync queue,id map, audit logCSV import scriptsPHP: bulk-load productsSync connectorQueue-based: categories,attributes, productsMagento web service APIReceives catalogueMagento storefrontTheme, checkout, payments,Varnish and Memcache
A CakePHP admin app keeps the catalogue in MySQL and queues every change; a connector pushes categories, attributes and products to the Magento store, where shoppers buy.
  1. Catalogue staff sign in to the admin web app (CakePHP) and manage items with their colour, size and style variations, prices, images, brands, suppliers, categories, size charts and attributes.
  2. Every change is saved in MySQL, where it is also written to a sync queue; CSV import scripts bulk-load products and linked products and queue them in the same way.
  3. The sync connector reads the queue and keeps an id map and an audit log of what it sent, also in MySQL.
  4. The connector pushes categories, attributes and products to the Magento store through its web service API, and the catalogue appears on the storefront.
  5. Shoppers browse and buy on the Magento storefront, which has a custom theme and checkout and is cached with Varnish and Memcache.

Technology used

Technology named in the project records, by layer
LayerChoicePurpose
DataMySQLcatalogue, sync queue, id map and audit log
StoreMagento, custom themestorefront, checkout and account pages
IntegrationMagento web service APIpushes categories, attributes and products
PaymentsPayPal, Amazon Checkout, Google Checkoutcheckout payment methods
Admin appCakePHP (PHP), jQuery, jQuery UI, CKEditorcatalogue management screens
PerformanceVarnish, Memcachestorefront caching

What happened next

  • Delivered

    The work described above was delivered to the client.

  • Operational facts
    • Our work on this project spanned 2012–2017.
    • It was maintained and extended over 5 years.

Screens

Could this be your project?

Request similar work

Questions about this project

How long did this project take?

Our work on it ran from 2012 to 2017.

What technology was used?

MySQL, Magento, Magento web service API, PHP, PayPal, CakePHP, CKEditor, Varnish, Memcached, Amazon Checkout, Yotpo, HTML, CSS, jQuery, jQuery UI.

Was it maintained and extended over time?

Yes. Our work on this project was maintained and extended over 5 years, from 2012 to 2017.

What the client says

if you need a developer that not only gets things done, but gets it done fast its Baljinder

Joel K.Primescuba web developer · 2013

Similar work

Insurance-ordering online store for a medical supplier screenshot

Also MySQL and PHP, same industry

Insurance-ordering online store for a medical supplier

  • Retail and eCommerce
  • Healthcare
  • eCommerce
  • Web apps
  • Integrations

2014–2021

A PrestaShop store for breast pumps and accessories with insurance-covered ordering flows, a multi-step checkout, FSA and Tricare support and payment gateways.

Hemag Nova AG: multi-store Magento 2 platform screenshot

Also MySQL and Magento, same industry

Hemag Nova AG: multi-store Magento 2 platform

  • Retail and eCommerce
  • eCommerce
  • Web apps
  • Website and SEO

2018–2021

A Magento 2 platform for several storefronts: custom shipping and product import modules, a partial Magento 1 migration, Algolia search and responsive theming.

JobCapper dashboard design: handshake and key requests, and assigned leads, under a navigation bar with Jobs, Leads, SLAM, Vendors, Clients, Payments, Reports, People and Documents

Also MySQL and PHP, also a web app

JobCapper: job, lead and commission portal

  • Business software and compliance
  • Web apps
  • Integrations

2015–2016

A web portal for trade contractors to manage jobs, leads, payments, commissions and reports, with a business-card and handshake network, subscription plans and a full interface design.

Building something similar?

Tell us what you need and your industry. We will tell you what is realistic, what it would take, and show you the closest work we have done.

Are you ready to partner with us?

Our good-natured team is waiting to hear your business requirements.

Book a free project call