Logo Lanfrica

gkanyanta/shopexpresszm

Domain:

digital infrastructure

Record type:

software
Creator:
gka
Host:
SHOP EXPRESS ZM - Multi-vendor e-commerce marketplace for Zambia # SHOP EXPRESS ZM **Your trusted online marketplace for local and international products, powered by Inland Express Zambia's shipping expertise.** A multi-vendor e-commerce platform for Zambia with local marketplace, international product sourcing ("Buy For Me"), delivery logistics, and payment integration. ## Tech Stack - **Framework**: Next.js 16 (App Router) + TypeScript - **Database**: PostgreSQL + Prisma ORM - **Auth**: Auth.js v5 (email/password with role-based access) - **UI**: Tailwind CSS + shadcn/ui - **State**: Zustand (cart), Server Actions (mutations) - **Validation**: Zod + React Hook Form ## Getting Started ### Prerequisites - Node.js 18+ - PostgreSQL database - npm or pnpm ### 1. Clone & Install ```bash git clone cd shopexpresszm npm install ``` ### 2. Environment Setup ```bash cp .env.example .env ``` Edit `.env` with your database URL and secrets: ```env DATABASE_URL="postgresql://user:password@localhost:5432/shopexpresszm" AUTH_SECRET="generate-with-openssl-rand-base64-32" ``` ### 3. Database Setup ```bash # Generate Prisma client npm run db:generate # Push schema to database npm run db:push # Seed with demo data npm run db:seed ``` ### 4. Run Development Server ```bash npm run dev ``` Open localhost. ## Demo Accounts | Role | Email | Password | |------|-------|----------| | Admin | admin@shopexpresszm.com | Password123 | | Customer | mwansa@example.com | Password123 | | Customer | grace@example.com | Password123 | | Vendor | david@techzone.zm | Password123 | | Vendor | chileshe@zedfashion.zm | Password123 | | Vendor | bwalya@homestyle.zm | Password123 | ## Project Structure ``` src/ ├── app/ │ ├── (public)/ # Public pages (home, shop, about, etc.) │ ├── (customer)/ # Customer dashboard │ ├── (vendor)/ # Vendor portal │ ├── (admin)/ # Admin dashboard │ ├── auth/ # Sign in / Sign up │ └── api/ # API routes ├── actions/ # Serve …