Everything Duabalabs builds, documented in one place — the Sellub, DPS, Connect, and 3y3anaa engines, the npm packages that power them, and how they all connect.
The Engines
Each engine is strong on its own and stronger together. Pick one to dive into its guides, architecture, and APIs.
A multivendor supply-chain operating system — marketplace, branded storefronts, payments, and logistics on one network.
The multi-tenant control plane that provisions, packages, and ships every backend in the ecosystem. Built and maintained by Forge.
Postiz-powered social management plus a no-code n8n automation marketplace — self-serve or done-for-you.
Ghana's reviews-and-trust backbone — composite trust scores and transparent complaint resolution, exposed to every app via one SDK.
SDKs & Packages
12 typed, published npm packages — the building blocks apps use to integrate with the Duaba engines.
Typed client for Sellub — external payments, subscriptions, invoices, and the Vendure Shop GraphQL API (catalog, cart, checkout, orders).
Shared TypeScript types & DTOs consumed by every Sellub package and server plugin.
The central pricing, plan, attribution & commission engine — one source of truth across server, dashboard, and storefront.
Sign, verify, parse, and dispatch Sellub webhooks — get a typed event back on the consumer side.
React hooks & components for embedding catalog, checkout, and subscription gates into Next.js / Vite apps.
React Native hooks wrapping sellub-client with mobile-friendly patterns (offline cache, AsyncStorage session).
Drop-in <script> embed that mounts a Sellub storefront on any HTML page. Zero build, no framework.
Get Started in Minutes
Every SDK is published under the @duabalabs scope and ships ESM + CJS with full type definitions.
# Commerce npm install @duabalabs/sellub-client # Reviews & trust npm install @duabalabs/reviews-sdk # Social & automation npm install @duabalabs/connect-client
import { createReviewsClient } from '@duabalabs/reviews-sdk' // scoped, server-side trust client const reviews = createReviewsClient({ apiUrl: process.env.THREEYANAA_API_URL, appKey: process.env.THREEYANAA_APP_KEY, })
Go Deeper