ProjectsDireConnect

Full-stack web application · Practice project

April 2026 – Present · In progress

DireConnect

An actively developed full-stack practice project for small businesses to manage customer data and run targeted email outreach.

Why this needed to exist.

Small businesses often compete for attention without the advertising budgets or customer-engagement systems available to larger companies. DireConnect explores a direct, business-controlled way to manage customer relationships and run repeat email outreach.

From interface to underlying system.

The current build supports business and customer management, email campaign creation and scheduling, audience previews, unsubscribe handling, and delivery logs. BullMQ and Redis queue campaign jobs for a separate worker, while authentication and business-level checks protect customer data. Live email delivery is explicitly configured; development uses a safe simulation. SMS sending and the planned loyalty and referral features are not part of the current build, and the practice project has not officially launched.

  • Email campaigns & delivery logs
  • Queued campaign processing
  • Business-owned customer data

How the pieces connect.

  1. 01

    A Next.js, React, and TypeScript web app provides the business-owner interface for customer and campaign workflows.

  2. 02

    An Express REST API handles business, customer, and campaign operations separately from the frontend.

  3. 03

    Prisma and PostgreSQL store business, customer, campaign, and delivery data; Supabase Auth handles sign-in, with Zod validating requests.

  4. 04

    BullMQ and Redis queue campaign jobs for a separate worker, which uses Resend when live email delivery is enabled.

  5. 05

    Deployment separates the web app on Vercel, API on Render, and worker on Railway, with Supabase for managed data and Sentry for error monitoring.

The work behind the screen.

Connecting audience previews, scheduled campaigns, background processing, unsubscribe handling, and delivery logs into one workflow.

Keeping customer and campaign records scoped to the owning business across the interface and API.

Separating web, API, and worker processes while keeping live email delivery gated and development safely simulated.