Chhattisgarh Hastkala Samriddhi (CGHS)
Chhattisgarh Hastkala Samriddhi (CGHS) is a web application built to support local artisans by giving them a digital storefront to showcase, promote, and sell handmade art. The platform aims to help buyers discover authentic, culturally significant artwork from Chhattisgarh, while enabling artisans to reach wider audiences.
This repository contains:
-A FastAPI backend with PostgreSQL storage -A React (Vite) frontend with a simple component-based UI -Early-stage login/registration features -A scalable architecture for adding marketplace features in future phases
Current Status
This project is under active development. Basic authentication is implemented, and the UI contains placeholders for pages that will be expanded into full marketplace features.
Features (Current) β Backend
-FastAPI server -CORS-enabled API -PostgreSQL connection using psycopg2 -User registration with duplicate-username handling -User login validation
β Frontend
-React (Vite) application -Client-side routing using component state -Login and Registration pages -Basic Home, Discover, and Search placeholder pages -Conditional rendering based on authentication status
Features (Planned / Upcoming)
π Artisan Marketplace
-Artisan profile creation and management -Artwork/product uploads with images, descriptions, and pricing -Public storefront for artisans -Category browsing and curated discovery pages
π Buyer Experience
-Search functionality with filters (style, material, artisan, price) -Product detail pages -Cart and checkout integrations -Order tracking
π Platform Infrastructure
-Secure password hashing -Token-based authentication (JWT) -Image upload storage (Cloud / local) -Admin panel for content moderation
Tech Stack Layer Technology Frontend React (Vite), JavaScript Backend FastAPI, Python 3 Database PostgreSQL Auth (Current) Username/password (basic) Auth (Future) Username/password (hashed)
Repository Structure
CGHS/
β
βββ backend/
β βββ main.py
β βββ README.md
β βββ requirements.txt
β
βββ frontend/
β βββ src/
β β βββ main.jsx
β β βββ App.jsx
β β βββ components/
β β β βββ Header.jsx
β β β βββ Home.jsx
β β β βββ Discover.jsx
β β β βββ Search.jsx
β β β βββ Login.jsx
β β β βββ Register.jsx
β β βββ assets/
β βββ README.md
β
βββ start/
β βββ start.bat
β βββ README.md
β
βββ README.md # (This file)
Prerequisites
You will need: -Node.js (18+) -Python 3.10+ -PostgreSQL -Git
Backend Setup (FastAPI)
- Navigate to Backend folder
- Install dependencies: pip install requirements.txt
- Configure database credentials inside main.py
- Run the server: python -m uvicorn main:app --reload
Backend will be available at http://127.0.0.1:8000
Available API Endpoints
Method Endpoint Description
POST /register Register new users POST /login Authenticate existing users GET / Basic server status check
Frontend Setup (React + Vite)
- Navigate to Backend folder
- Install dependencies: npm install
- Start development server: npm run dev
Frontend will be available at http://127.0.0.1:5173
Known Limitations (Current Phase)
-Passwords are stored in plaintext (needs hashing) -UI is minimal; pages are placeholders -Search/Discover lacks real data integration -No image upload system yet
These will be addressed in the next development stages.