Back to projects

Full Stack

Flog It (2023)

Microservices Auction Platform - Foundation Project

A demonstrative car auction platform built to showcase .NET microservices architecture. Features 6 backend services (Auction, Bidding, Gateway, Identity, Notification, Search), real-time bidding via SignalR, and a Next.js frontend. Originally deployed on Kubernetes clusters with full CI/CD. This project served as the foundation for Hero Exchange (2025), demonstrating production-ready patterns that were later extended with gamification features.

Key Features

  • 6 microservices: Auction, Bidding, Gateway, Identity (Duende), Notification, Search
  • Real-time bidding with SignalR hub broadcasting to all connected clients
  • gRPC communication between Bidding and Auction services for synchronous calls
  • RabbitMQ message bus for AuctionCreated, BidPlaced, AuctionFinished events
  • Duende IdentityServer with JWT tokens for secure authentication
  • Python bot for simulating auction creation and bid placement
.NET 7ASP.NET CoreEntity Framework CoreNext.js 13TypeScriptPostgreSQLMongoDBRabbitMQgRPCSignalRDockerKubernetesPython

Services / Architecture

  • AuctionService: CRUD operations with PostgreSQL and Entity Framework Core
  • BiddingService: Bid validation, MongoDB storage, gRPC client to AuctionService
  • GatewayService: Reverse proxy routing to all backend services
  • IdentityService: Duende IdentityServer with seeded demo users (bob, alice)
  • NotificationService: SignalR hub with RabbitMQ consumers for real-time broadcasts
  • SearchService: PostgreSQL with auction data synced via RabbitMQ events

Methodologies & Testing

  • Microservices boundaries: Each service owns its database (PostgreSQL or MongoDB)
  • Event-driven updates: SearchService and NotificationService consume auction/bid events
  • gRPC for synchronous calls: BiddingService validates auction status before accepting bids
  • Background job: CheckAuctionFinished runs every 5 seconds to detect expired auctions

Deployment

  • Kubernetes cluster deployment with ingress controller
  • Docker containers for each service (dionupton/auction-svc, bid-svc, etc.)
  • GitHub Actions CI/CD pipeline for automated builds and deployments
  • Live demo previously at app.flogitdemoapp.co.uk (now sunset due to hosting costs)

Gallery

Marketplace grid showing live car auctions with countdown timers, bid amounts, filters (Live/Ending Soon/Completed), and real-time bid notifications
Click to enlarge

Marketplace grid showing live car auctions with countdown timers, bid amounts, filters (Live/Ending Soon/Completed), and real-time bid notifications

Auction detail page for Ford Mustang showing bid history, vehicle specs (Make, Model, Year, Mileage), countdown timer, and real-time bid toast notifications
Click to enlarge

Auction detail page for Ford Mustang showing bid history, vehicle specs (Make, Model, Year, Mileage), countdown timer, and real-time bid toast notifications

Create auction form with fields for Make, Model, Colour, Year, Mileage, Image URL, Reserve Price, and Auction end date/time
Click to enlarge

Create auction form with fields for Make, Model, Colour, Year, Mileage, Image URL, Reserve Price, and Auction end date/time