EthioLocal is a next-generation local commerce platform designed to transform how people discover and buy products in Ethiopia. With AI-powered assistance, real-time product discovery, multi-platform access (web, mobile, Telegram), and secure QR-based delivery, EthioLocal delivers a seamless and intelligent shopping experience for buyers, sellers,
# LocalMarket-Platform (EthioLocal)
Monorepo for **EthioLocal**: a local-marketplace stack with buyers, sellers, delivery partners, and admins. The **API** is Express + Prisma (PostgreSQL). The **web** app is **Next.js 15** (App Router) with the public marketing site, storefront, auth flows, and role-based dashboards (shadcn/ui).
### GitHub “About” (set on github.com — not stored in git)
On the repo home page, click the **⚙️** beside *About*, then paste:
| Field | Suggested value |
|--------|------------------|
| **Description** | `EthioLocal — local marketplace: Next.js 15 shop & dashboards, Express + Prisma API, Flutter client, Telegram bot. Ranking, QR pickup, escrow-style orders.` |
| **Website** | Your production URL, docs site, or `
github.com` until you ship. |
| **Topics** | `marketplace`, `ecommerce`, `nextjs`, `react`, `typescript`, `express`, `prisma`, `postgresql`, `telegram-bot`, `flutter`, `monorepo`, `ethiopia`, `local-commerce`, `nodejs` |
| Package | Role | Default URL / how to run |
|--------|------|---------------------------|
| **`api/`** | REST API (`/api/v1`, also mounted at `/` for legacy paths) |
localhost |
| **`web/`** | Next.js UI (marketing, shop, dashboards) |
localhost |
| **`ethiolocal/`** | **Flutter** mobile client — talks to the API only (not the Next server) | API base defaults to `
localhost` via `ApiConfig` (`ethiolocal/lib/core/config/api_config.dart`). On a **physical device** or **Android emulator**, use a reachable host (e.g. `flutter run --dart-define=API_BASE_URL=
10.0.2.2` for emulator → your PC). **iOS Simulator** can use `
localhost`. Run: `cd ethiolocal && flutter run`. |
| **`bot/`** | **Telegram** bot (`node-telegram-bot-api`) — shop, search, AI assistant, orders (after `/link`), seller/delivery links | See bot/README.md. Needs `TELEGRAM_BOT_TOKEN` and the same API running. Run: `cd bot && npm run d …