Back to projects
Operations / Admin SystemBackend system

Mushroom

This project pairs a Shopify storefront brand presence with a custom NestJS (TypeScript) backend for operations. The operations/admin backend uses PostgreSQL via TypeORM, implements role-based access control (ADMIN/FARMER/MANUFACTURER/PACKAGER) with JWT auth, and enforces a FIFO batch allocation system (no order splitting across batches). It integrates Shopify orders + webhooks and tracks a stage-based production workflow from cultivation to shipping with sequential enforcement. Notifications are delivered via AWS SES (email) and AWS SNS (SMS), and local ops use Docker Compose (Postgres + pgAdmin). The public storefront emphasizes Lion’s Mane tinctures/powders/coffee and uses QR-code traceability (“born-on date”).

Mushroom

Tech stack

NestJSTypeScriptPostgreSQLTypeORMJWT AuthSwagger (OpenAPI)AWS SESAWS SNSShopify (orders/webhooks)Docker ComposepgAdmin

Challenges

  • Enforcing strict business rules around FIFO allocation and stage progression across roles
  • Integrating external commerce systems (Shopify) safely with webhooks and syncing
  • Delivering reliable notification flows (email + SMS) and operational observability

Solutions

  • Implemented role-based authorization and sequential stage validation per batch workflow
  • Built Shopify integration flows (webhooks + product/order fetch/sync scripts) with clear DTOs and routing
  • Integrated AWS SES/SNS for notifications, plus Swagger docs and health checks for operations

Impact

Operationally sound admin backend for inventory, order fulfillment, and production tracking

Clear separation of roles and responsibilities across the workflow lifecycle

Production-friendly deployment and local tooling via Docker Compose

Screenshots

Mushroom screenshot 1

Project details

Role
Backend Developer
Category
Operations / Admin System
Scope
Backend system