हुनर • HUNAR Platform
Authentic Grassroots Artisan Monetization & Career Platform
Hunar is an authentic, hyper-local career and direct patronage platform purpose-built for India's grassroots creators: visual artists, Madhubani folk masters, Khurja ceramicists, Awadhi bridal henna artists, and large-scale muralists.
It eliminates intermediary exploitation by guaranteeing 100% direct artisan equity, transparent physical provenance tracking, WhatsApp-first client negotiations, and milestone-based commissions.
🏛️ Monorepo Architecture
The repository is organized into three completely decoupled sub-projects:
hunar-platform/
├── tinyfish/ # DEDICATED TINYFISH AGENT PACKAGE
│ ├── src/
│ │ ├── client.ts # Core TinyFish SDK client instance & API key auth
│ │ ├── services/
│ │ │ ├── search.ts # Search API: Live craft & GI registry search
│ │ │ ├── fetch.ts # Fetch API: Clean markdown/JSON scraping & courier SOPs
│ │ │ ├── web-agent.ts # Web Agent: Goal-driven multi-step courier rate comparisons
│ │ │ └── browser.ts # Browser Infra: Cloud browser automation for rural hub discovery
│ │ ├── mock/ # Resilient fallback fixtures & simulated agent logs
│ │ └── index.ts # Unified module exports
│ ├── package.json
│ ├── tsconfig.json
│ └── README.md
│
├── backend/ # CORE SERVER & DATABASE API
│ ├── src/
│ │ ├── controllers/ # Orders, Products, In-App Chat, Mentorship handlers
│ │ ├── models/ # Prisma schema, database migrations
│ │ ├── routes/ # Express/REST API endpoints
│ │ │ ├── chat.ts
│ │ │ ├── payment.ts
│ │ │ └── tinyfish.ts # Routes invoking the ./tinyfish service
│ │ ├── middleware/ # Session auth & role checks
│ │ └── config/
│ ├── package.json
│ ├── tsconfig.json
│ └── .env.example
│
├── frontend/ # USER INTERFACE (Next.js 14+)
│ ├── src/
│ │ ├── app/ # Next.js App Router
│ │ │ ├── dashboard/
│ │ │ │ ├── customer/ # Customer Bazaar, Orders, In-app Chat
│ │ │ │ ├── seller/ # Studio Workbench, Products, Mentorship setup
│ │ │ │ └── admin/ # Logistics Benchmarks, Hubs, TinyFish Live Monitor
│ │ │ ├── login/
│ │ │ └── layout.tsx # Wrapped with LanguageProvider
│ │ ├── components/ # UI elements, Chat modals, QR payment widgets
│ │ ├── context/ # LanguageContext (8 Indian languages)
│ │ └── lib/ # Frontend utilities & TinyFish API consumers
│ ├── package.json
│ ├── tailwind.config.js
│ └── tsconfig.json
│
├── .gitignore
└── README.md
🎨 Craftsmanship-First Design System ("Anti-AI Slop")
Hunar strictly rejects generic template patterns (no purple-to-blue neon gradients, no floating pill badges, no three-box feature clones, and no glassmorphic blurs). The interface is grounded in tactile Indian materiality:
- Palette:
- Kohl Charcoal (
#1E2229): Deep mineral typography and grounded slate buttons. - Raw Terracotta (
#B4461F/#963716): Primary accents, craftsmanship seals, and milestones. - Forest Sage (
#2D583B/#23452E): WhatsApp channels, verified master badges, and customer action buttons. - Matte Linen / Canvas (
#F9F6F0/#FAF7F2): Tactile card surfaces with subtle hairline borders (#E8DEC8).
- Kohl Charcoal (
- Typography:
- Headings: Upright Cinzel and Plus Jakarta Sans (Weights 600/700).
- Body Copy: Humanist DM Sans for high-density catalog specifications.
- Physical Geometry:
- Structured
rounded-smcorners with snappyduration-150transitions.
- Structured
👥 Dual Persona Workflows
1. Seller / Artisan Experience (/dashboard/seller/*)
- Studio Hub (
/dashboard/seller): Real-time metrics on catalog valuation, quote requests, and active gigs. - Craft Inventory (
/dashboard/seller/products): Inventory management with stock levels, lead times, and physical dimensions. - Listing Studio (
/dashboard/seller/products/new): Structured artwork publisher. - Client Leads & Boli (
/dashboard/seller/inquiries): Interactive commission workflow (Under Review ➔ Crafting in Progress ➔ Dispatched ➔ Completed). - Open Gigs Radar (
/dashboard/seller/opportunities): Commercial tenders and cafe facade commissions matched to artisan categories. - Kala Roadmap (
/dashboard/seller/roadmap): Practical 6-month earnings milestones and commercial pricing benchmarks.
2. Customer / Patron Experience (/dashboard/customer/*)
- Curated Craft Bazaar (
/dashboard/customer): Regional feed filterable by medium (Pottery, Madhubani, Murals, Bridal Mehndi) and city. - Master Directory (
/dashboard/customer/artisans): Directory of grassroots masters with verification status and base rates. - Commission Tracker (
/dashboard/customer/orders): 4-stage visual timeline tracking raw pigment preparation to safe packaging. - Post a Requirement (
/dashboard/customer/post-gig): Patron curation desk to post custom wall mural or bulk gifting requirements. - Saved Moodboard (
/dashboard/customer/wishlist): Shortlisted artists and pieces for interior commissions.
🚀 Getting Started
Prerequisites
- Node.js 18.x or higher
- npm 9.x or higher
1. Clone & Setup
git clone https://github.com/tanmay7-gif/Hunar-platform.git
cd Hunar-platform
2. Install Dependencies
Install root workspace dependencies, which automatically installs both frontend and backend:
npm install
3. Environment Setup
Create environment files from the examples:
# Frontend
cp frontend/.env.example frontend/.env.local
# Backend
cp backend/.env.example backend/.env
4. Running the Development Servers
Option A: Run Both Concurrently (Workspaces)
# Frontend (Next.js App on http://localhost:3000)
npm run dev:frontend
# Backend (Express API on http://localhost:5000)
npm run dev:backend
📡 REST API Reference
The backend exposes a structured REST API under /api:
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/auth/login |
Authenticate user or switch 1-click demo personas |
GET |
/api/auth/me |
Fetch active session profile |
GET |
/api/products |
Retrieve catalog artworks with category & city filters |
GET |
/api/products/:id |
Fetch detailed artwork specifications and provenance |
POST |
/api/products |
Publish new artwork to studio inventory |
GET |
/api/creators |
Discover verified regional artisan profiles |
GET |
/api/creators/:username |
Retrieve public Hunar Lookbook card |
GET |
/api/inquiries |
Fetch customer/seller commission inquiries |
POST |
/api/inquiries |
Submit custom commission brief |
PATCH |
/api/inquiries/:id |
Update milestone progress and studio notes |
GET |
/api/opportunities |
List open gigs and cafe mural tenders |
POST |
/api/opportunities |
Post patron requirements to Gigs Radar |
GET |
/api/stats |
Platform-wide artisan metrics & GMV statistics |
GET |
/api/health |
Service health status check |
🔒 Security & Data Integrity
- Direct client-to-artisan WhatsApp routing prevents commission interception.
- Strict TypeScript schemas shared across frontend models and backend controllers.
- Cross-Origin Resource Sharing (CORS) restricted to authenticated frontend origin.
📄 License
This project is licensed under the MIT License.
Built With
- antigravity
- claude
- next.js
- node.js
- prisma
- tailwind-css
- tinyfish
- typescript