Product Creation & E-Commerce Platform

2026 - Present

Overview

A full-stack product creation and e-commerce platform: a Next.js/React storefront with a live Konva/react-konva customization studio, a separate Next.js/React admin app, and an ASP.NET Core Web API on Azure SQL and Blob Storage. Stripe checkout, JWT auth with role-based authorization, and SignalR notifications are shipped through a gated GitHub Actions/Playwright pipeline to staging and production.

Problem & Context

Sellers of customizable products need two things most off-the-shelf storefronts don't offer together: a design studio where a buyer can personalize a base product in real time, and an operations side where staff can manage base products, design assets, shipping/production rules, and orders without touching the database directly. This platform covers both halves end to end, not just the customer-facing storefront.

My Role

Responsible for the full stack: the Next.js/React storefront and the separate Next.js/React admin application, the ASP.NET Core Web API and its EF Core data layer, the Azure infrastructure (SQL, Blob Storage, App Service), the CI/CD pipeline, and the Playwright test suite.

Architecture

Key Engineering Decisions

  • Storefront and admin are split into two separate Next.js apps sharing one ASP.NET Core API, so each can be deployed, scaled, and rolled back independently.
  • JWT access tokens with refresh tokens and role-based authorization protect both the customer-facing API and the admin API, with separate account and role models for customers versus internal staff.
  • Azure SQL stores relational data (products, orders, accounts); Azure Blob Storage stores uploaded design assets and generated previews, keeping large binary files out of the database.
  • Every pull request runs the Playwright end-to-end suite before merge, and promotion from staging to production is a separate, gated GitHub Actions workflow rather than an automatic push.

Challenges & Trade-offs

Splitting storefront and admin into separate apps duplicates some infrastructure and auth plumbing, but was chosen over a single monolith so admin tooling changes can't accidentally break the public storefront, and the two can scale independently.

Testing & Deployment

Pull requests run lint, type checking, the build, and the Playwright end-to-end suite via GitHub Actions before merge. Scheduled and on-demand workflows add a nightly regression pass and WebKit-specific smoke tests. Deploys to staging and production are separate, gated workflows targeting Azure App Service (API) and Vercel (storefront and admin), so a release only reaches production after passing staging.

Results & Current Status

Feature-complete for the core flow — product customization, cart, Stripe checkout, order management, and the admin back office — and running on staging, including the public read-only admin demo linked above. It has not yet opened to paying customers in production, so there are no live usage or revenue numbers to report; the current focus is finishing production rollout.

Tech Stack

Frontend: Next.js, React, Konva/react-konva

Backend: ASP.NET Core, .NET, Entity Framework Core, SQL Server, Azure SQL, Azure Blob Storage, JWT

Real-time: SignalR

Payments: Stripe

DevOps: GitHub Actions, Playwright, Azure App Service, Vercel