Case study
SaaS Advisory Hub
B2B SaaS Discovery Marketplace
- A moderated B2B marketplace to discover, compare, and review software and advisory services.
- Rich vendor listings with pricing plans, integrations, and G2-style structured reviews.
- Editorial control — listings, reviews, and vendors approved before public visibility.
- Meilisearch-powered discovery with side-by-side compare and shareable research links.

- Industry
- B2B Marketplace
- Duration
- 1.5 Months
- Platform
- Dual-app marketplace
- Users
- Buyers & Vendors
- Stack
- Next.js · NestJS · Meilisearch · PostgreSQL
What was built and why it matters
Executive Summary
B2B buyers struggle to evaluate SaaS tools and service agencies from scattered vendor sites. Vendors need a structured marketplace to publish rich listings, collect reviews, and drive affiliate traffic — with editorial control so low-quality or unverified content does not pollute discovery.
SaaS Advisory Hub operates a three-sided content marketplace: buyers discover and compare software and services, vendors manage businesses and listings through a dedicated portal, and platform admins approve listings, reviews, vendors, and editorial blog content.
The platform ships as three deployable applications on NestJS with Prisma on PostgreSQL, Meilisearch for discovery, dual Next.js apps, a vendor moderation pipeline, and cloud media uploads — deployed on a shared platform edge at saasadvisoryhub.com.
What problem existed before this project
The Business Challenge
B2B software discovery is fragmented — buyers bounce between vendor sites, G2 clones, and agency directories with no single moderated source of truth.
Status quo
Before the platform
- Buyers cannot compare software pricing, integrations, and reviews in one structured view
- Vendors publishing on scattered platforms with inconsistent listing quality
- Unmoderated reviews and listings polluting discovery with spam or inaccurate data
- Service agencies and software products living in separate taxonomies with no unified search
- No vendor workflow for rich listing creation with media, pricing, and affiliate links
- Blog and editorial content disconnected from the product catalog search experience
What it cost
Business consequences
- Longer buyer research cycles with no shareable comparison links
- Vendor affiliate revenue lost when discovery happens off-platform
- Platform credibility damaged by unverified or low-quality submissions
- Admin moderation bottlenecks without structured approval pipelines
- Search performance degrading as catalog grows without dedicated indexing
- Vendor edits going live without re-review, introducing stale or inaccurate data
Previous workflow
How work happened before
A disconnected chain of manual steps — each handoff added delay, errors, and lost visibility.
- 01Step
Scattered vendor research
Buyer visits multiple vendor sites and review platforms separately
- 02Step
Unstructured agency directories
Service providers listed with minimal capability or pricing data
- 03Step
Manual spreadsheet compare
Feature and pricing comparison built by hand across tabs
- 04Step
Unmoderated user reviews
Reviews published without verification or quality checks
- 05Step
Vendor self-publishing
Listings go live immediately with no admin approval gate
What the client needed to achieve
Project Objectives
Engagement scope
8 objectives
Build a moderated B2B marketplace for software and advisory service discovery
Provide rich software listings with pricing plans, integrations, competitors, and affiliate links
Support service agency profiles with industry focus, rates, and capability matrices
Implement G2-style structured reviews with multi-dimensional ratings and admin approval
Deliver fast global search via Meilisearch with PostgreSQL-backed filters
Enable side-by-side compare with shareable URL parameters for buyer research
Give vendors a portal with multi-section listing wizards and business profile management
Maintain editorial control with moderation workflows for listings, reviews, and vendors
How the platform addresses the challenge
The Solution
SaaS Advisory Hub ships as three deployable applications: a Next.js public app for discovery, compare, blog, and vendor portal routes; a Next.js admin console on a separate subdomain; and a NestJS API handling versioned REST endpoints.
PostgreSQL is the authoritative data store with Prisma. Meilisearch indexes denormalized documents for software, services, categories, and blogs synced on create, update, and publish. Listings, reviews, and vendors default to pending state until admin approval — public queries filter approved and active content only.
Vendors configure affiliate URLs and commission on software listings. Editorial badges mark featured and verified catalog entities. A blog CMS with SEO metadata and search index sync supports content marketing alongside the product catalog.
Platform architecture
6 components
Public discovery app
Browse, search, compare, blog, and vendor portal routes
Meilisearch indexes
Denormalized documents synced on every write for fast full-text search
Moderation pipeline
Listings, reviews, and vendors approved before public catalog visibility
Vendor portal
Business profiles and multi-section listing wizards for software and services
Admin console
Dashboard KPIs, moderation queue, blog CMS, and user administration
Compare & reviews
Side-by-side research with structured reviews recomputing aggregate ratings
How users move through the system
Product Workflow
User journey
8 steps
- 01Step
Buyer browses catalog
Category and facet browsing with Meilisearch-powered global search
- 02Step
Compare options
Side-by-side software or service comparison with shareable URL links
- 03Step
Read approved reviews
Structured multi-dimensional ratings with pros, cons, and recommendation scores
- 04Step
Vendor registers
Business profile created with proof upload; vendor account pending admin approval
- 05Step
Submit listing
Multi-section wizard for software or service listing enters moderation queue
- 06Step
Admin approves
Listing, review, or vendor approved — Meilisearch index updated on publish
- 07Step
Vendor edits listing
Non-rejected edits reset to pending for re-moderation before changes go live
- 08Step
Affiliate traffic
Buyers click vendor-configured affiliate links with disclosure on the frontend
What the platform delivers
Core Features
Platform capabilities
14 features
Software Catalog
Rich product pages with pricing plans, mobile apps, FAQs, competitors, integrations, and affiliate links.
Service Marketplace
Agency profiles with industry focus, hourly rates, certifications, and capability matrices.
Meilisearch Global Search
Parallel queries across software, services, and categories with PostgreSQL counts for unified results.
Side-by-Side Compare
Compare context synced with URL parameters for software and service entities with shareable links.
Structured Reviews
G2-style reviews with organization, job title, usage duration, multi-dimensional ratings, and pros/cons.
Review Approval Pipeline
Reviews default to pending; approved reviews recompute average rating and total count on parent listings.
Vendor Portal
Dashboard with listing stats, business CRUD, and multi-section create/edit wizards for software and services.
Moderation Workflow
Vendor submissions enter pending state; admin approve or reject with reason before public visibility.
Re-Moderation on Edits
Non-rejected vendor edits automatically return to pending for admin review before changes go live.
Blog CMS
Admin sectioned posts with tags, SEO meta, featured images, and Meilisearch sync when published.
Affiliate Links
Vendors configure outbound affiliate URLs and commission on software listings with frontend disclosure.
Editorial Badges
Featured and verified flags on catalog entities for editorial promotion of quality listings.
Virtual Categories
Service industry types surface as virtual category entries when not yet mapped to the software taxonomy.
Authenticated Media Uploads
Cloud storage uploads with user-scoped keys and ownership validation before listing creation.
Dashboard, workflows, and portals
Product Screenshots
Product UI
3 screenshots
How the system is structured
Technical Architecture
Three deployable applications on NestJS with Express, Prisma on PostgreSQL, and Meilisearch for discovery indexing. Customer and admin frontends proxy API requests same-origin in production. External integrations include DigitalOcean Spaces for media, Resend for transactional email, and Google OAuth.
The dual-store pattern keeps PostgreSQL authoritative while Meilisearch serves fast full-text search. Create and update operations flatten relational data into denormalized search documents with error logging on sync failure.
System layers
5 layers
Public Next.js app
Discovery, compare, blog, and vendor portal routes
Admin Next.js console
Separate subdomain for moderation and CMS operations
NestJS API
Versioned REST with role guards and listing normalization
PostgreSQL + Prisma
Authoritative relational data for listings, reviews, and vendors
Meilisearch indexes
Denormalized search documents synced on every write
Infrastructure components
10 services
Next.js public app with Tailwind CSS and Framer Motion
Next.js admin console on separate subdomain
NestJS API on Express with Swagger documentation
Prisma ORM on PostgreSQL with moderation state fields
Meilisearch indexes for software, services, categories, blogs, users, and roles
Dual-store sync on create, update, and publish with error logging
DigitalOcean Spaces for authenticated media uploads
Resend for transactional email delivery
Google OAuth with signed state for customer vs vendor account routing
Server-side normalization of complex listing form payloads before validation
Hard problems and how they were solved
Engineering Challenges
Challenge 1
Rich software payloads from complex forms
Solution
Server-side normalization of stringified JSON arrays and booleans before validation on create and update.
Challenge 2
Service verticals vs software categories
Solution
Virtual categories in global search merge service industry types with the software taxonomy.
Challenge 3
Untrusted vendor media
Solution
Authenticated upload with user-scoped storage keys and ownership validation on listing create.
Challenge 4
Review spam and low quality
Solution
Admin approval pipeline with aggregate ratings computed only from approved reviews.
Challenge 5
Re-moderation on vendor edits
Solution
Non-rejected listing edits automatically return to pending for admin review.
Challenge 6
Search index drift from database
Solution
Dual-store pattern with Meilisearch sync on every write and filter configuration on service bootstrap.
Production technologies
Technology Stack
Frontend
- Next.js
- React.js
- TypeScript
- Tailwind CSS
- Framer Motion
Backend
- NestJS
- Express
- Prisma
- Swagger
Data & search
- PostgreSQL
- Meilisearch
- Resend
Infrastructure
- Docker
- Shared platform edge TLS
- DigitalOcean Spaces
Built for production load
Performance & Scalability
Production readiness
8 optimizations
Meilisearch full-text search avoids heavy PostgreSQL pattern matching on discovery queries
Parallel search queries in global search endpoint for sub-second unified results
Denormalized index documents avoid joins at search time
Stateless API scales horizontally behind shared platform edge Nginx
Cloud object storage offloads binary media traffic from API containers
Same-origin API proxy in frontends eliminates CORS preflight on read requests
Pagination utilities on list endpoints for admin and catalog browsing
Prisma migrations run on backend startup with health checks on core services
Operational and commercial outcomes
Business Impact
SaaS Advisory Hub gave B2B buyers a moderated discovery marketplace — with structured compare, approved reviews, and a vendor pipeline that keeps catalog quality high as the platform scales.
Outcomes delivered
8 outcomes
Unified search across software, services, and categories via Meilisearch
Side-by-side compare with shareable links shortening buyer research cycles
G2-style structured reviews with admin approval protecting catalog credibility
Vendor portal enabling rich self-service listing creation with moderation gate
Re-moderation on edits preventing stale or inaccurate live listings
Affiliate link support creating vendor monetization path on the platform
Blog CMS with search index sync supporting editorial content marketing
B2B discovery marketplace live at saasadvisoryhub.com with ongoing vendor onboarding
Technology choices explained
Why This Architecture Works
Design rationale
6 decisions
Why this choice
Meilisearch dual-store pattern
Full-text search across software, services, and blogs cannot perform at scale on PostgreSQL pattern matching alone.
Why this choice
Pending-default moderation
B2B catalog credibility depends on admin approval before any vendor submission reaches public discovery.
Why this choice
Re-moderation on vendor edits
Vendors updating pricing or capabilities after approval could introduce inaccurate data without a review gate.
Why this choice
Virtual categories for services
Service industry verticals do not map cleanly to software taxonomy — virtual entries unify global search.
Why this choice
Server-side form normalization
Rich multi-section listing wizards produce complex payloads that must be normalized before validation.
Why this choice
Separate admin subdomain
Moderation, CMS, and vendor administration have different access patterns and security boundaries from public discovery.
What this project reinforced
Lessons Learned
Key takeaways
5 lessons
Moderation defaults to pending — never live-first — when catalog credibility is the platform's core value proposition.
Re-moderation on vendor edits is as important as initial approval; stale pricing erodes buyer trust quickly.
Virtual categories bridge the gap between software taxonomy and service verticals without forcing artificial merges.
Shareable compare URLs turn research sessions into repeatable team workflows for B2B buying committees.
Meilisearch sync on every write prevents index drift — batch reindex jobs are a recovery tool, not a strategy.
Explore related work
Similar Projects & Services
Common questions about the SaaS Advisory Hub project
Case Study FAQ
A B2B marketplace where buyers discover, compare, and review software and advisory services with vendor moderation.
Dual Next.js apps, NestJS, Meilisearch, PostgreSQL, and Docker support discovery, reviews, compare UX, and vendor workflows.
B2B buyers lacked a moderated platform to evaluate software and advisory vendors with structured reviews and comparison tools.
About the author

Next step
Next step
Looking to Build Something Similar?
Whether you're building a multi-tenant SaaS, marketplace, CRM, ERP, or AI platform — let's discuss your project and how a dedicated development partnership can deliver it.