Marketplace
This guide will help you set up the Nimara marketplace app in your local environment.
The marketplace is a vendor portal for managing products, orders, collections, and vendor pages in a multi-vendor e-commerce setup powered by Saleor.
Fork and clone project
First, fork the Nimara repository to your own GitHub account.
Go to the Nimara GitHub repo .
Click the Fork button in the top-right corner.
Once the fork is created, clone your fork locally:
git clone https://github.com/{your_github_username}/nimara-ecommerce.git nimara-ecommerce
cd nimara-ecommerceInstall project’s dependencies
pnpm installCopy variables
Copy environment variables from .env.example to .env:
cp .env.example .envAdd backend URL and set up environment variables
Use a free developer account at Saleor Cloud or run Saleor locally using Docker.
# Add backend address
NEXT_PUBLIC_SALEOR_API_URL=https://{your_domain}.saleor.cloud/graphql/
# Local example
# NEXT_PUBLIC_SALEOR_API_URL=http://localhost:8000/graphql/For a full list of required and optional variables, see the Environment Variables Guide.
Run project
Run the development server:
pnpm dev:marketplaceThe marketplace app runs on port 3001 by default.
Features
The marketplace app provides the following vendor-facing features:
- Product Management - Create, update, and manage products and variants
- Order Management - View and fulfill customer orders
- Collections - Organize products into collections
- Vendor Pages - Manage vendor profile pages and page status
- Customer Management - View and manage customers
i18n
The marketplace app also uses the shared i18n package described in the i18n architecture docs. It passes app: "marketplace" to @nimara/i18n’s createRequestConfig, so it receives the common + marketplace message bundles (with locale-specific overrides applied where defined).
Environment Variables
Key environment variables for the marketplace:
| Variable | Description |
|---|---|
NEXT_PUBLIC_SALEOR_API_URL | Saleor GraphQL API endpoint |
AWS_SECRETS_MANAGER_ENDPOINT | AWS Secrets Manager endpoint (for local development with LocalStack) |
MARKETPLACE_SMTP_HOST | SMTP host used for sending marketplace emails |
MARKETPLACE_SMTP_PORT | SMTP port (default: 587) |
MARKETPLACE_SMTP_USER | SMTP username (optional, if your SMTP server requires auth) |
MARKETPLACE_SMTP_PASSWORD | SMTP password (optional, if your SMTP server requires auth) |
MARKETPLACE_SMTP_SECURE | Use TLS from the start (default: false) |
MARKETPLACE_EMAIL_FROM | From address, e.g. "Nimara Marketplace <no-reply@example.com>" |
MARKETPLACE_SUPERADMIN_EMAIL | Email that receives new vendor registration notifications |
Deployment
Connect GitHub Repository
Go to your projects on Vercel -> click Add New and select Project.
Choose your Nimara GitHub repository and click Import.
Set up New Project
Select your Vercel Team, add Project Name, set Root Directory to apps/marketplace.
Set Build Command to turbo run build --filter=marketplace and Install Command to pnpm install.
Configure Environment Variables
Add the required environment variables in Vercel:
NEXT_PUBLIC_SALEOR_API_URLMARKETPLACE_SMTP_HOST(optional, required only to send emails)MARKETPLACE_SMTP_PORT(optional)MARKETPLACE_SMTP_USER(optional)MARKETPLACE_SMTP_PASSWORD(optional)MARKETPLACE_SMTP_SECURE(optional)MARKETPLACE_EMAIL_FROM(optional, required only to send emails)MARKETPLACE_SUPERADMIN_EMAIL(optional, required only to notify admin on registration)
Deploy
Click Deploy to deploy your marketplace app.