Skip to main content

Farshid Sanati

Freelance Web & Mobile Developer

Leadus — Web Platform & Dashboard

Case Study

Leadus — Web Platform & Dashboard

Leadus is a Persian-first SaaS for Iranian SMBs: marketing site, owner dashboard, per-business subdomains, and public flows for surveys, wheels, and conferences. Next.js 15 + Tailwind, FastAPI + MySQL backend, ZarinPal payments, multi-channel messaging. Mobile app on the same platform.

Industry
SaaSLocal businessMarketing automationIranRTL

Role: Full-stack developer

Duration: Multi-phase delivery

Challenge

Small and mid-sized businesses need one place to run marketing sites, customer clubs, and bulk messaging across SMS, email, Telegram, and WhatsApp—without juggling separate tools. Public campaigns must work for anyone with a link, while owners need a secure Persian dashboard and subdomain mini-sites.

Solution

Built a Next.js application with RTL marketing pages and a large owner dashboard backed by a shared FastAPI service. Middleware rewrites subdomains to dynamic business pages. Wallet and feature purchases via ZarinPal server routes. PWA for dashboard; APK/PWA download pages for mobile distribution.

Impact

Owners manage businesses, messaging, customer club tools, and payments in the browser. Customers interact via public URLs on the same domain. The web layer centralizes branding and distribution for the Leadus mobile app.

Tech stack

Next.jsTypeScriptReactTailwind CSSFastAPIMySQLJWTZarinPalPWALeaflet

Project overview

Leadus is a Persian-first SaaS platform for Iranian businesses to manage their online presence, customer engagement, and multi-channel outreach. The web product is the public marketing face, the authenticated owner dashboard, per-business subdomains, and shareable campaign pages—paired with the Leadus React Native app on the same platform.

What we built

  • Marketing site — Home, services, pricing, about, training, contact, business directory, Android APK and iOS PWA download flows.
  • Owner dashboard — Business CRUD, branches, catalogs, virtual tours, posts, social links, site settings, feature purchase, per-business wallet.
  • Digital advertising — SMS (single, Excel, contacts, reports), email (SMTP settings, templates, send), Telegram, WhatsApp.
  • Customer club — Members, groups, bulk import, birthday SMS, appointments, digital cards, surveys, lucky wheels, lotteries, scheduled SMS, dialer.
  • Conferences & events — Create and edit events, registrations, bulk import, SMS, public registration and kiosk check-in pages.
  • Public campaign URLs — Surveys, wheels, lotteries, and conference flows reachable by link without installing the app.
  • Subdomain mini-sites — Per-business public pages (catalog, posts, tours) on the Leadus domain.
  • Payments — Wallet charge, invoices, ZarinPal request/verify through Next.js API routes.
  • Platform admin — Users, business approval, discount codes.

Technical approach

Next.js 15 App Router with TypeScript and Tailwind; RTL UI (Vazirmatn). Phone OTP → JWT authentication. Subdomain routing in middleware for business mini-sites. PWA scoped to the dashboard. Jalali dates; Leaflet on public business views. Shared FastAPI + MySQL backend with the mobile app.

Mobile companion

The Leadus mobile client mirrors dashboard capabilities for owners on the go—documented as a separate portfolio case study (leadus-mobile-app).

App Store / Play Store URLs are not emphasized; distribution includes direct APK and iOS PWA guidance on leadus.ir.