The Divine Jewelry is a full-featured e-commerce platform for a jewelry store, built with Python Flask and MongoDB. This responsive web application provides a seamless shopping experience with features like product browsing, user authentication, shopping cart, order management, and admin dashboard.
The application is hosted at: http://cs2team20.cs2410-web01pvm.aston.ac.uk/
- User Authentication: Register, login, and profile management
- Product Management: Browse products by category, collection, and search
- Shopping Cart: Add items to cart, adjust quantities, and checkout
- Order Tracking: Real-time order status tracking for both guests and registered users
- Admin Dashboard: Comprehensive product, user, and order management
- Responsive Design: Seamless experience across desktop and mobile devices
- Email Notifications: Order confirmations and transactional emails
- Wishlist: Save favorite items for later
The jewelry is organized into distinctive collections:
- Crystal Collection: Brilliant pieces featuring crystal designs
- Leaf Collection: Nature-inspired jewelry with elegant leaf motifs
- Pearl Collection: Timeless elegance with lustrous pearls
- Backend: Python Flask
- Database: MongoDB Atlas
- Frontend: HTML, CSS, JavaScript
- Authentication: Flask-Login
- Email: Flask-Mail
- Form Processing: Flask-WTF
- Deployment: Linux server
To run this project on the server, follow these steps:
-
SSH into the server:
ssh cs2team20@cs2410-web01pvm.aston.ac.uk
Password:
NMfpRb6mThfW+q3e
-
Navigate to the project directory:
cd Team-website-project
-
Create a virtual environment:
python3 -m venv venv
-
Activate the virtual environment:
source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python run.py
-
The website will be available at: http://cs2team20.cs2410-web01pvm.aston.ac.uk/
app/
: Core application directorystatic/
: Static files (CSS, JS, images)templates/
: HTML templatesmodels.py
: Database modelsroutes.py
: Request handlers and routesforms.py
: Form definitionsdatabase.py
: Database connection setup
config.py
: Application configurationrun.py
: Application entry point
To access the admin dashboard:
- Log in using admin credentials (Email: Admin123@Admin.com Password: Admin123)
- Navigate to
/admin
or use the Admin Dashboard link in the navigation
For local development:
- Clone the repository
- Create a virtual environment
- Install dependencies:
pip install -r requirements.txt
- Set up MongoDB connection in
config.py
- Run with:
python run.py
This project is developed by Team 20.
- Team 20 Members