Portfolio

Platforms we have planned, built and shipped.

CRMs, marketplaces, booking systems, directories and the integrations behind them, for clients in the US, UK, France, Greece, Poland, Morocco and Ireland. Each project below started with a business problem; the case studies say what we built and why it mattered.

Client engagements
200+
Delivery items shipped
940+
Countries served
7
Industries
10+

Selected case studies

FitnessOur own SaaS product · CRM + Android app

Fitnatic

Coaching CRM & member app for gyms

fitness-crm.wpcodie.com
roles (owner, admin, trainer, member), each seeing only its own gym
4
free trial, ready in a minute with sample data
15 days

Fitnatic is our own coaching CRM and member app for gyms. Trainers build each member’s workout and diet plan, members follow it on the gym’s Android app and track their progress, and owners see who has paid and who is slipping away before they quit. One platform serves many gyms, and no gym can ever see another’s data.

  • Multi-gym SaaS
  • Supabase & row-level security
  • React CRM
  • Android app (Expo)
  • Push notifications
Read the case study

What we delivered

  • A multi-gym CRM for owners, admins and trainers, with database-level access rules (row-level security) tested for every role across two gyms
  • Member onboarding by the gym, including bulk import of existing members from CSV or Excel; sign-in by emailed code, or by mobile number with a one-time invite link sent over WhatsApp or SMS
  • Fee tracking built for how gyms are actually paid: members pay the gym directly and upload the proof, staff verify it in a queue, receipt numbers are issued, and overdue members are locked out of the app after a grace period
  • A weekly workout-plan builder with the gym’s own video library (YouTube, Vimeo or uploads), supersets, templates and assign-to-many
  • Diet plans with a calorie target, timed meals and a built-in food library of local dishes, showing the running total against the target
  • An Android member app: today’s workout, the weekly view, diet with meal ticks, water, weight and progress photos, membership and proof upload, and an offline cache
  • Member-to-trainer chat with images and documents and read receipts, plus push notifications and daily reminders
  • Trainer and owner dashboards: who is paid, overdue or due soon, and which members are going off track
  • A public landing page and a self-serve 15-day free trial that creates a gym filled with sample data, locks itself when the trial ends and cleans up afterwards

How a fee gets paid

  1. Member pays the gym directly
  2. Uploads the proof in the app
  3. Staff verify it in the queue
  4. Receipt number issued
  5. App stays unlocked

A member’s week

  1. Trainer assigns workout & diet plans
  2. Member follows them in the app
  3. Logs meals, water, weight & photos
  4. Trainer sees who is slipping
  5. A chat or reminder brings them back

Our role

Everything, end to end: product strategy and specification, UX and the design system, the CRM, the Android app, the database and its security, and the free-trial funnel. Fitnatic is a WPCodie product.

Why it mattered

Gyms lose members quietly: a missed week becomes a cancelled membership. Fitnatic puts a coach’s plan in every member’s pocket and shows owners who is drifting while there is still time to win them back. It also fits how many gyms are actually paid, with proof of a direct payment, so the product never has to take a card.

LegalOur own SaaS product · staff CRM + client app

LegalFlow CRM

CRM & client portal for law firms

legal-crm.wpcodie.com
staff roles, from intake coordinator to supervising partner
6
platform for the whole journey, from first inquiry to paid invoice
1

LegalFlow is our own CRM and client portal for law firms. It follows a matter from first inquiry through conflict check, signed engagement letter, documents and work to invoice and payment, and gives clients an app to follow their own case and act on it. The firm stops chasing clients, and clients stop chasing the firm. Many firms share one platform, and no firm can ever see another’s data.

  • Multi-firm SaaS
  • Client portal
  • E-signature
  • Document scanning
  • Django & React
  • Flutter app
Read the case study

What we delivered

  • Lead capture, qualification and conversion into a client and matter, with a conflict check before anything is opened
  • Engagement letters with e-signature links that clients sign from their phone
  • Matters with workflows and stage gates, team assignment, tasks and critical dates
  • Document requests with virus scanning and quarantine before a file reaches the firm
  • Conversations on each matter, with notifications in the app and by email through each firm’s own Gmail
  • Invoices with proof of payment uploaded by the client and verified by the firm
  • A client app on the web and Android: documents to send, messages, payments and the progress of their matter
  • A full audit trail: who did what, when, on whose authority, and what the client was told

A matter’s journey

  1. Inquiry
  2. Conflict check
  3. Engagement letter signed
  4. Client & matter opened
  5. Documents collected
  6. Work & updates
  7. Invoice & payment

Our role

Everything, end to end: product specification, the staff CRM, the client app, the backend and its security model, and deployment. LegalFlow is a WPCodie product; an interactive demo is on our homepage.

Why it mattered

Law firms lose hours to chasing in both directions: clients ringing for updates, and staff chasing clients for documents and payment. LegalFlow puts every update and request in the client’s pocket while keeping the professional record a firm must be able to produce later, and internal notes and reasoning never reach the client.

Healthcare & wellnessMulti-sided marketplace

Wellapy

Healthcare & wellness professional booking platform (Greece)

wellapy.gr

A Greek marketplace connecting people with psychologists, psychotherapists, mental-health professionals, coaches, nutritionists and other wellness professionals. Users find professionals by specialty and location, review profiles and availability, and book online or in-person sessions.

  • Healthcare marketplace
  • Search & filtering
  • Appointment booking
  • Online & in-person
Read the case study

What we delivered

  • Professional discovery with search and filtering by specialty, location and more
  • Professional profiles showing expertise and real availability
  • Appointment booking for both online and in-person sessions
  • Workflows for both sides: professionals maintain their presence and availability; users search, choose and manage their bookings
  • The supporting platform functionality that ties search, profiles, scheduling and user journeys together

The user journey

  1. Search by specialty & location
  2. Review profile & availability
  3. Book an online or in-person session
  4. Manage the appointment
Why it mattered

A two-sided healthcare marketplace only works when both sides are served at once: professionals keep their profiles and availability current, and users can go from search to a booked session in one place.

Home services35+ delivery items

League of Trades

UK tradesperson marketplace & review platform

A marketplace of vetted tradespeople for UK homeowners, competing with incumbents like Trustatrader and Yell. The model rests on trust (verified reviews), revenue (guarantee plans and subscriptions) and a smooth path from lead to booking for both sides.

  • Stripe Connect
  • Subscriptions
  • Reviews
Read the case study

What we delivered

  • The full “claim your listing” journey: claim → choose a plan → checkout → dashboard, on Stripe with split payments
  • Customer reviews and guarantee registration, with a Stripe Connect payout flow for the platform’s share
  • Payment requests, so tradespeople invoice customers through the platform and track payment status
  • Search that shows results as you type, without loading delays
  • CSV exports for the client’s own reporting
Why it mattered

The guarantee flow lowers the risk of hiring an unfamiliar tradesperson, which is exactly what sets the platform apart from free-listing competitors.

Beauty25+ delivery items · French localisation

Hello Coiffeur

Hairdresser booking & salon directory (France)

hello-coiffeur.com

A French directory of hair salons with built-in online booking. The hard part was slot accuracy: a salon with several stylists must know who is free for which service, in 30-minute steps, and never double-book anyone.

  • Booking engine
  • Localisation
  • SEO
Read the case study

What we delivered

  • A custom multi-stylist booking engine: staff per slot, duration per service, and blocking for absences
  • A salon calendar (weekly view, blocks sized by duration) that matches the customer-facing booker
  • A quote-request workflow with editable email templates for a related B2B directory
  • Full French localisation, including DD/MM/YYYY dates and dynamic SEO titles by listing and location
  • Reminders 24 hours ahead, with logic that skips bookings made inside that window
Why it mattered

Double-booking a stylist is the biggest operational risk for a multi-chair salon, and the slot and staff-matching logic exists to rule it out.

Non-profit25+ delivery items

Church Santa Cruz

Community church & ministry directory

churchsantacruz.org

Helps residents of Santa Cruz County find churches and ministries by denomination and region. Its value depends on precise categorisation and on a dependable calendar of services and events.

  • Events
  • Search & filters
  • SEO
Read the case study

What we delivered

  • Search and filters by worship style, denomination and region (North, Mid and South County), with explanatory hover text
  • A recurring-events calendar that distinguishes weekly services from one-off events
  • Listing and event submission flows, and a navigation redesign based on the client’s usability feedback
  • Google event markup so church events appear in Google’s event search
  • CAPTCHA and account-security hardening against spam sign-ups
Why it mattered

For a community resource, a mis-filed listing undermines trust in the whole directory, so strict region and denomination filtering is the product.

Local business20+ delivery items

Salt Spring Directory

Local business directory with CRM integration

saltspringdirectory.com

A claim-and-list business directory with paid plans. The client’s growth depended on getting listing data into their HubSpot CRM automatically, so sales and marketing could work leads without re-typing them.

  • HubSpot
  • WooCommerce
  • Data import
Read the case study

What we delivered

  • HubSpot integration pushing new and updated listings into companies and contacts automatically
  • Category mapping that normalises messy source data to the directory’s own taxonomy on import
  • A clear “claim a listing” vs. “add a new one” flow, fixing a confusing redirect loop
  • A bulk importer that creates owner accounts and sends password-set onboarding emails
  • WooCommerce subscription plans synced into CRM company records
Why it mattered

One-way sync from the directory to HubSpot keeps the directory as the single source of truth, so CRM edits never overwrite live listings.

Travel20+ delivery items · 3,000+ listings

Sanidumps

RV dump stations & campgrounds directory (North America)

sanidumps.com

Helps RV travellers across the US and Canada find dump stations and campgrounds near them. With thousands of listings, the launch risk was technical: broken paging, misplaced map pins or slow search would break “find one near me”.

  • Geo search
  • Large dataset
  • Performance
Read the case study

What we delivered

  • Pre-launch triage: SEO sitemaps, location archive pages and hosting-migration errors
  • “Near me” search tuned separately for campgrounds and dump stations
  • A bulk export and import pipeline, fixing column misalignment that corrupted data
  • Clean-up of hard-coded development URLs so no images or links broke after launch
  • Performance work on searches that were timing out across thousands of rows
Why it mattered

For a traveller, distance accuracy is the whole product: a result from the wrong side of the continent breaks its core promise.

Local business18+ delivery items · web + app view

European business directory

Multi-category search & payments (Poland)

A directory with a desktop site and a separate mobile app view, earning through PayU subscription plans and paid ad placements. The challenge was keeping payments, renewals and search consistent across both front ends.

  • PayU
  • 3-D Secure
  • Subscriptions
Read the case study

What we delivered

  • PayU integration for plans and ads, including 3-D Secure and recurring renewals
  • Multi-category filters with “near me” and “best match” sorting, kept in step on desktop and app view
  • Distance and listing-count sorting for city results
  • Self-service plan changes and cancellation through an admin panel
Why it mattered

PayU confirms payments asynchronously and needs an HTTP 200 back; getting that right is what made payments confirm reliably and protected subscription revenue.

Beauty15+ delivery items

Salon Finders

UK beauty & salon marketplace

A lead-generation marketplace connecting UK salons with customers. Access to leads is tiered by plan, so accurate plan-gating and instant lead alerts are tied directly to revenue.

  • Twilio
  • Stripe
  • Google Places
Read the case study

What we delivered

  • In-platform messaging between customers and salons, visible only to paid-plan businesses
  • Instant Twilio SMS alerts to a salon’s phone when an enquiry lands
  • UK-only Google Places search and submission
  • Coupon and checkout fixes on the Stripe plan purchase
Why it mattered

Plan-gated messaging is the platform’s main revenue lever, so “paid sees leads, free does not” was treated as release-blocking.

Automotive16+ delivery items

Vehicle listings marketplace

Dealer subscription platform

Dealers list vehicles with make, model, mileage and specification filled in automatically from a third-party vehicle-data API, on tiered Stripe subscriptions with approval for professional accounts.

  • Third-party API
  • Stripe
  • Approvals
Read the case study

What we delivered

  • Vehicle-data API integration auto-filling listing forms and search filters
  • Three Stripe subscription tiers, with admin approval before professional listings go live
  • A browse-then-pay paywall that re-prompts users who left before paying
  • A full system test against the original requirements, tracked as a punch list
Why it mattered

The paywall and approval gate keep listing quality and payment compliance high on the dealer side of a two-sided marketplace.

Community13+ delivery items

Black In Town

Directory of Black-owned businesses

blackintown.com

A directory built to raise the visibility of Black-owned businesses, with paid plans and an upsell path. The client wanted owners to get real performance data they could reuse in their own marketing.

  • Analytics
  • Social login
  • PayPal
Read the case study

What we delivered

  • Monthly, exportable owner reports: calls, website clicks, reservations, redeemed offers, social clicks and visits
  • Curated third-party review aggregation with a review “word cloud”
  • Google and Apple sign-in for owners and customers
  • A plan picker and PayPal checkout, with a paid-plan prompt before a free listing is submitted
  • Re-confirmation emails every 30 days to keep listings current
Why it mattered

Small businesses can prove and reuse their own traffic numbers, which gives the platform value well beyond a simple listing.

Travel13+ delivery items

“Things to Do” directory

Regional tourism & activities (Virginia)

Activities and attractions for a US regional tourism market, split between paid Featured placements and general results that must never overlap.

  • Geo search
  • Featured placements
Read the case study

What we delivered

  • “Near me” (detected location) and “Nearby” (typed address) search with radius results
  • Distances shown on both Featured and general results
  • Featured listings kept out of general results at every radius
  • Paging fixes after a regression, and a video-based bug verification process with the client
Why it mattered

Any overlap gives away a paid Featured placement for free, so it was treated as a high-priority defect throughout.

Healthcare & B2B12+ delivery items

B2B supplier & treatment-centre directory

Two listing types, one platform

A directory serving treatment centres and B2B vendors and suppliers, each needing different fields, plans and account behaviour, under strict brand and content rules.

  • Custom forms
  • Plans
  • SEO
Read the case study

What we delivered

  • Separate submission forms for each listing type, built to the client’s specification
  • Multi-select, drag-and-drop accreditation, language and treatment fields
  • Regular and premium plans with payment-gateway integration
  • A single crawlable page per listing (content out of hidden tabs), as the client’s SEO required
Why it mattered

A treatment centre offering both detox and rehab does not fit one category; multi-select classification keeps listings fully represented in search.

E-commerce & logistics11+ delivery items

Mistara

Group-buying marketplace with parcel-locker delivery (Morocco)

mistaraportal.com

A WooCommerce marketplace where sellers list items alone or as group-buy offers (“achats groupés”), fulfilled through a national parcel-locker network with strict phone and address formats.

  • WooCommerce
  • Shipping API
  • Negotiation
Read the case study

What we delivered

  • Parcel-locker API integration: create, cancel (within an hour) and track shipments
  • Offer negotiation: fixed-price or negotiable listings, with accept and reject actions
  • The group-buy flow, with cart and quantity limits
  • Checkout validation requiring full contact details before an order is placed
Why it mattered

Converting local 06/07 phone numbers to the carrier’s international format is essential: without it, shipments are silently rejected.

Beauty11+ delivery items

Monlipstick

Beauty & wellness institute booking (France)

monlipstick.fr

Online booking for beauty and wellness institutes, where different practitioners are qualified for different services, which makes booking eligibility the central problem.

  • Booking engine
  • Localisation
Read the case study

What we delivered

  • Staff-to-service eligibility in the calendar, so no one books a practitioner who cannot perform the service
  • Services that need two practitioners at once
  • Slot lengths that follow each service’s real duration
  • Category limits per plan (five categories), tied to the pricing tiers
Why it mattered

Eligibility checks stop an institute from double-booking a specialist or promising a service no one available can deliver.

Local business11+ delivery items

Attractions Ontario

Homepage & search UX programme

attractionsontario.ca

Focused on the highest-traffic parts of a directory, the homepage banner and the main search bar, where small usability problems cost the most completed searches.

  • UX
  • Page builder
Read the case study

What we delivered

  • A page-builder-friendly search bar component the client can move without a developer
  • A configurable homepage slider (images, direction, timing) in the theme settings
  • Less visual clutter on the homepage, based on the client’s usability feedback
Why it mattered

Making the banner and search editable by non-technical staff cuts the client’s ongoing dependence on developer time.

Reputation11+ delivery items · 3+ sites

Rated Trades

Multi-site review aggregation network

ratedtrades.us

Aggregates reviews across several directory sites run by one operator (including belairlocal.com and martinsburglocal.com). Review authenticity is the commercial promise.

  • Google Reviews
  • Multi-site
  • Verification
Read the case study

What we delivered

  • Google Reviews integration showing live counts and content next to native reviews
  • Phone verification before a native review is accepted
  • One aggregated score across all review sources
  • The same review system rolled out to every site from one shared codebase
Why it mattered

Phone verification protects the credibility of the “Rated” brand across the network; without it there is no defence against fake reviews.

Travel10+ delivery items

VRR Guru

Multi-country vacation rental directory

vrrguru.com

Short-term rentals across the US, Canada, Mexico and the Caribbean, distinguishing the listing’s owner (often a property manager) from the host guests actually meet.

  • Google API
  • Data model
Read the case study

What we delivered

  • Country → city filters fed live from Google rather than a fixed list
  • An owner vs. host data model, made clear in the interface
  • Submission fields reordered to match how hosts enter them
Why it mattered

Guests need to know who they will deal with on arrival, independent of who manages the listing commercially.

Industrial B2B5+ delivery items

Agro-Industries.fr

B2B industrial equipment quote marketplace (France)

agro-industries.fr

Connects buyers of industrial packaging and processing equipment with suppliers through quote requests (“demandes de devis”) rather than checkout, as is typical for high-value procurement.

  • Quote workflow
  • Localisation
Read the case study

What we delivered

  • A quote-request workflow: the buyer asks, the admin routes to suppliers by category, suppliers accept or decline with full detail
  • Admin routing fixes so every relevant supplier can be selected
  • A fully French dashboard using the client’s procurement terminology
  • A Google review follow-up email five days after a completed request
Why it mattered

Industrial suppliers need the full specification before they respond; a blind accept-or-decline does not work for this buyer.

Integrations we deliver with

  • Stripe
  • PayU
  • PesaPal
  • Twilio
  • HubSpot CRM
  • Google Maps & Places
  • WooCommerce
  • WordPress
  • CSV / XML data pipelines

Have a platform in mind?

Tell us what you are trying to fix. We will come back with a direction, a scope and a plan.

Start a project →