Skip to main content

Welcome to supplymars

Your One-Stop Shop for Life on the Red Planet

Pioneering Commerce Beyond Earth

Whether you're managing a Martian colony or stocking up for your next extravehicular adventure, Supplymars is your destination for everything from habitat maintenance to cutting-edge scientific equipment.

It's also a fully functional demo designed to showcase e-commerce development with a modern PHP stack — modelling real operational complexity, not just add-to-cart basics.

The Platform

Built for Modern E-commerce

Product Management

Full product catalogue with categories, subcategories, images, and manufacturer associations.

Supplier Management

Multiple suppliers per product with cost tracking, stock levels, and supplier product catalogues.

Order Processing

Customer orders with line items, status tracking, and automatic allocation to supplier purchase orders.

Purchasing

Purchase orders generated from customer demand, tracked through acceptance, shipping, and delivery.

Pricing & VAT

Configurable markup strategies at multiple levels, VAT rate management, and sell-price calculation.

Reporting

Dashboards with revenue, margin, and order metrics. Daily granular records aggregated into fast summaries.

What's Under the Hood

Real Operational Complexity

01

Multi-supplier Sourcing

Products aggregate multiple supplier sources. A best-source algorithm picks the lowest cost, with automatic cost optimisation and stock-aware allocation across every product.

02

Dynamic Pricing Cascades

Three-level markup cascades across product, subcategory, and category with pretty-price models and event-driven recalculation.

03

Order Line Splitting

When no single supplier can fulfil the required quantity, order lines can split across multiple suppliers. Overall status is derived from the lifecycle of the resulting purchase order items.

04

Purchase Order Lifecycle

Full lifecycle management from allocation through acceptance, shipping, and delivery with state-machine transitions and domain event propagation.

05

Simulation-driven Design

Console commands drive the full order, purchasing, and fulfilment lifecycle with realistic timing, automated stock fluctuation, and two-layer reporting aggregation.

Built With

Modern Stack, Proven Patterns

DDD Architecture

Modular monolith with bounded contexts, CQRS command/query separation, and domain events driving cross-context communication.

PHP 8.5 + Symfony 8

Modern PHP with readonly classes, enums, and constructor promotion. Symfony powers the web UI, console commands, and a REST API with OpenAPI docs.

Hotwire + Tailwind

Turbo Frames and Streams deliver SPA-like navigation without page reloads. Stimulus adds targeted interactivity. Tailwind handles responsive styling.

Infrastructure

MySQL 8.4 with Doctrine ORM, RabbitMQ for async event processing, Redis for caching and sessions, and S3 for file storage. Deployed on AWS EC2.

The Demo

See It in Action

supplymars/products

Product Catalog

Screenshot placeholder

supplymars/orders

Order Management

Screenshot placeholder

supplymars/reporting

Reporting Dashboard

Screenshot placeholder

Explore the Source Code

Dive into the codebase, explore the architecture, or get in touch to learn more about how it's built.