A comprehensive web application dedicated to promoting and preserving India's rich cultural heritage through traditional crafts, cultural sites, and state-wise exploration.
Sanskriti is a web platform that showcases India's diverse cultural heritage by featuring:
- Traditional handicrafts and artisanal products from various states
- Cultural sites and monuments
- State-wise exploration of heritage
- E-commerce functionality for purchasing authentic cultural products
- User-friendly interface for exploring India's cultural diversity
- Cultural Exploration: Browse cultural sites and monuments by state
- Product Marketplace: Purchase authentic traditional crafts and handicrafts
- State-wise Navigation: Explore different states and their cultural offerings
- Shopping Cart: Add products to cart and place orders
- User Dashboard: Manage personal information and orders
- Inventory Management: Add, update, and manage product listings
- Order Management: Track and process customer orders
- Dashboard: View sales analytics and product performance
- Product Management: Approve and manage retailer product submissions
- User Management: Oversee user accounts and activities
- System Administration: Maintain platform functionality
- Frontend: HTML, CSS, JavaScript
- Backend: PHP
- Database: MySQL
Sanskriti/
βββ Frontend Components
β βββ homepage.php/css # Landing page
β βββ state.php/css # State exploration
β βββ mart.php/css/js # Product marketplace
β βββ login.php/css # User authentication
βββ User Management
β βββ register.php/css # User registration
β βββ user_dashboard.php/css # User profile management
β βββ cart.php/css # Shopping cart
βββ Retailer Panel
β βββ retailer_dashboard.php/css # Retailer management
β βββ retailer_inventory.php/css # Inventory management
β βββ addProduct.php/css # Product addition
βββ Admin Panel
β βββ Admin_dashboard.php/css # Administrative controls
β βββ Product management # Product approval system
βββ Core Functionality
β βββ db_connection.php # Database connection
β βββ Various action files # Backend processing
β βββ Common components # Header, footer
βββ Assets
βββ cultural_sites/ # Cultural site images
βββ products/ # Product images
βββ state/ # State representation images
βββ videos/ # Promotional content
-
Prerequisites
- XAMPP/WAMP/LAMP server
- PHP 7.4 or higher
- MySQL 5.7 or higher
-
Database Setup
- Create a MySQL database named 'sanskriti'
- Update database credentials in
db_connection.php - Execute the SQL schema provided in the Database Schema section below
- Populate initial data for States and Admin tables
-
File Deployment
- Copy all files to your web server directory
- Ensure proper file permissions
- Configure web server to serve PHP files
-
Configuration
- Update database connection settings
- Configure file upload paths for product images
- Set up proper directory permissions for asset uploads
- State-wise Exploration: Dynamic content loading based on selected state
- Product Management: Complete CRUD operations for products
- User Authentication: Secure login/registration system
- Shopping Cart: Session-based cart management
- Order Processing: End-to-end order management system
- Image Management: Organized asset structure for cultural content
The Sanskriti platform uses a MySQL database with the following structure:
Complete Entity-Relationship diagram showing all tables and their relationships
CREATE TABLE Users (
ID varchar(10) PRIMARY KEY,
Password varchar(255),
Phone varchar(20),
Email varchar(255),
Name varchar(255),
Street varchar(255),
City varchar(255),
State varchar(255),
Pincode varchar(10),
UserType enum('Customer','Retailer')
);CREATE TABLE States (
ID varchar(10) PRIMARY KEY,
Name varchar(255),
Image varchar(255),
About text,
Lang varchar(255),
Dance_Forms varchar(255),
Cuisine varchar(255),
Clothing varchar(255)
);CREATE TABLE Products (
ID varchar(10) PRIMARY KEY,
Name varchar(255),
Description text,
Image varchar(255),
Price decimal(10,2),
Quantity int(11),
StateID varchar(10),
RID varchar(10),
FOREIGN KEY (StateID) REFERENCES States(ID),
FOREIGN KEY (RID) REFERENCES Retailer(RID)
);CREATE TABLE Retailer (
RID varchar(15) PRIMARY KEY,
GST char(15),
Status enum('Pending','Approved')
);CREATE TABLE pendingProducts (
ID varchar(10) PRIMARY KEY,
Name varchar(255),
Description text,
Image varchar(255),
Price decimal(10,2),
Quantity int(11),
StateID varchar(10),
RID varchar(15),
FOREIGN KEY (StateID) REFERENCES States(ID),
FOREIGN KEY (RID) REFERENCES Retailer(RID)
);CREATE TABLE Cultural_Site (
ID varchar(10) PRIMARY KEY,
Name varchar(255),
Description text,
Image varchar(255),
Location varchar(255),
StateID varchar(10),
FOREIGN KEY (StateID) REFERENCES States(ID)
);CREATE TABLE Cart (
ProductID varchar(10),
CustID varchar(10),
Quantity int(11),
FOREIGN KEY (ProductID) REFERENCES Products(ID),
FOREIGN KEY (CustID) REFERENCES Users(ID)
);CREATE TABLE Order (
ID varchar(10) PRIMARY KEY,
CustID varchar(10),
Date date,
Time time,
Address text,
FOREIGN KEY (CustID) REFERENCES Users(ID)
);CREATE TABLE Products_in_Order (
OrderID varchar(10),
ProductID varchar(10),
Qty int(11),
FOREIGN KEY (OrderID) REFERENCES Order(ID),
FOREIGN KEY (ProductID) REFERENCES Products(ID)
);CREATE TABLE Admin (
AdminID varchar(10) PRIMARY KEY,
Name varchar(255),
Password varchar(255),
Email varchar(255),
DateCreated timestamp
);- Users can be either Customers or Retailers (UserType field)
- Retailers have additional information (GST, approval status)
- Products belong to specific states and are managed by retailers
- Pending Products await admin approval before moving to Products table
- Cultural Sites are associated with specific states
- Cart maintains user's selected products before checkout
- Orders track completed purchases with associated products
- States contain cultural information and serve as geographical categories
- User Management: Supports both customers and retailers in single table
- Product Approval Workflow: Separate pending products table for admin review
- Geographic Organization: State-based categorization for cultural content
- E-commerce Functionality: Complete cart and order management
- Cultural Heritage: Dedicated cultural sites linked to states
- Administrative Control: Admin table for platform management
To get started with the platform, you'll need to populate:
- States table with Indian states and cultural information
- Cultural_Site table with heritage sites for each state
- Admin table with administrative users
- Initial retailer registrations through the application
- Browse the homepage to explore cultural heritage
- Navigate to specific states to discover local culture
- Visit the marketplace to purchase authentic products
- Create an account to manage orders and profile
- Register as a retailer
- Access the retailer dashboard
- Add products to your inventory
- Manage orders and customer interactions
- Access the admin dashboard
- Approve retailer product submissions
- Manage user accounts and system settings
- Monitor platform activity
- Integration with payment gateways
- Mobile-responsive design improvements
- Advanced search and filtering options
- Multi-language support
- Social media integration
- Enhanced admin analytics dashboard
This project aims to preserve and promote India's cultural heritage. Contributions are welcome in the form of:
- Additional cultural sites and information
- New state coverage
- Product listings from artisans
- UI/UX improvements
- Bug fixes and feature enhancements