Email address: admin@mytek.com
Password: mytek2021
- Install
requirements.txt
in yourvenv
orpipenv
- You will need paypal business account and 2 paypal sandboxed accounts: Customer and Store Owner. Then, copy paste your public key in base.html (open base.html and you will find out exactly where to paste it)
-
HTML
,CSS
,Bootstrap
,JavaScript
,jQuery
-
Templates downloaded for free from https://www.templateshub.net/template/Electro-eCommerce-Website-Templates
I modified few parts to meet the required specifications. Else, backend is coded and integrated from the scratch.
-
Templates I coded: cart.html, checkout.html, accounts templates, order templates
Python
,Django
- sqlite3
- PostgreSQL DB
User signup
andpassword reset
with email verification - Please check your spam folder as well.User password change
while logged in- Change basic information
- Query of products related categrory
- Auto-decrement
Stock
product Auto-Discount
applianceProduct rating
andaverage rating
calculation- If stock is 0,
Out of stock
will take the place ofAdd to cart button
Add
andremove
products in cart- Cart items are saved before and after login using
sessionID
Add
andremove
cart items
- Query using
keywords
- Products pagination
- Products
checkout
- PayPal payment with
PayPal sandbox demonstration
Order review
before confirmationOrder receipt
- Use your customer paypal sanboxed email address to test payment
- Customer is able to subscribe to newsletter regardless of being registered or not.
- Above the footer, input your email address in the subscribe form and click on
subscribe
.
-
Customer is able to send message regardless of being registered or not.
-
In the footer menu, click on
Contact
.
- Python-decouple
- Admin Honeypot
- Django-filter Backend
- Per-view cache: Deleted as it caused Cart Items are not synchronized on all pages. Working on different CACHE integration.
- Navigate to the project root directory
- Copy paste this command
docker-compose build
and hit enter - Copy paste this command
docker-compose up
and hit enter - Open your browser and go to
127.0.0.1:8000
and not to0.0.0.0:8000
😁