Skip to main content
← All Projects
saas2024-2025completed

NexGen Sales

Recruitment portal with training LMS and admin dashboards

Overview

NexGen Sales started as a client project for a door-to-door sales company that needed a single platform to handle recruiting, screening, and onboarding new reps. The public-facing side is a marketing site with a blog and application form protected by reCAPTCHA v3. Once a candidate is accepted, they get access to a gated portal with structured courses, video trainings, and quizzes designed to screen and prepare reps before they hit the field. The backend runs on Nuxt 3 server routes with MongoDB Atlas via Mongoose. Authentication supports both email/password (bcrypt + JWT) and Google OAuth. All media assets — course videos, profile pictures, blog images — are stored in S3 and served directly. The app also integrates Square for payment processing on bundled product sales. The admin side is where most of the complexity lives. There are dedicated dashboards for managing every database collection: users, courses, trainings, blogs, affiliate tracking, and a full support ticket system. Content editors can create and reorder course modules with drag-and-drop, and user management includes role-based access control. The whole thing is a Nuxt 3 SSR app deployed on AWS Amplify with automatic deploys from the main branch. Auth, file storage, payments, CMS, and LMS all in one codebase without reaching for a dozen third-party SaaS tools.

Built With

Nuxt 3
Vue 3
TypeScript
MongoDB
Mongoose
AWS S3
AWS Lambda
Square
Pinia
Google OAuth
JWT
USPS

Architecture

Nuxt 3 AppFrontend (Vue 3 + SSR)
Pinia StoresClient State
Google OAuthSocial Auth
Nitro Server APIBackend (API Routes)
Square SDKPayment Processing
USPS APIShipping & Labels
AWS LambdaTransactional Email
MongoDB AtlasDatabase
AWS S3File Storage
AWS AmplifyHosting & CI/CD

Key Highlights

01

USPS Shipping Integration

Full USPS API v3 integration with OAuth2 token management, real-time address verification using DPV confirmation codes, dynamic rate lookups, and shipping label persistence to MongoDB.

02

Square Payments

End-to-end Square Payments integration with client-side card tokenization. The server re-fetches item prices from MongoDB before charging to prevent price tampering, with idempotency keys to prevent duplicate charges.

03

Training Pipeline

Multi-stage onboarding system where users progress through ordered training modules containing 7 polymorphic content types (paragraphs, lists, images, quizzes, polls, videos, subheadings). Completion triggers dual Lambda emails for interview scheduling.

04

Affiliate Engine

Affiliate tracking with auto-generated unique codes, per-affiliate commission percentages, and a Mongoose pre-save hook that recalculates totalEarnings by joining against the Transaction collection on every save.

05

Product Variants

Deeply nested product schema supporting 10 variant dimensions (color, size, material, style, etc.) with per-variant pricing, SKUs, stock, and images. Pre-save hooks auto-calculate savings percentages and subscription discount rates.

NexGen Sales screenshot
NexGen Sales screenshot

Get in Touch

Want to work together?

Whether you have a project in mind, want to collaborate, or just want to say hi, I'd love to hear from you. Drop me a message and I'll get back to you as soon as I can.