This is a basic eCommerce app. Vendors can sell items on the platform while customers can shop for these items. Card and MPesa Payment integration is added to complete the purchase cycle.
- Basic user authentication
- Database management
- Lipa Na Mpesa (pay using Mpesa)
- Get free airtime upon completing a purchase
- Geocomplete during search
- Find vendors near you
- Flask micro-framework
- Python, JavaScript for programming
- Lipa Na MPesa API
- Airtime API (Africa's Talking)
- Google Maps API
- SQLite for the database
Db Schema Design | UI Design | Deployment | Contributors | Tests |
---|---|---|---|---|
drawSQL | Figma | Render |
Application users:
-
Admin
- Creates the vendors after verifying their details
- Only an admin can add a vendor
- The assumption here is that the admin verifies the vendor before onboarding
-
Vendor:
- Creates products he wants to sell
-
Customer:
- Purchases products they want
To test the live app, use these credentials (if you don't want to create your own):
-
Admin:
- Username: harry
- Password: ecommerceapp123
-
Vendor:
- Username: tanya
- Password: ecommerceapp123
-
Customer:
- Username: taste
- Password: ecommerceapp123
-
Clone this repo:
$ git clone git@github.com:GitauHarrison/maliMALI-marketplace-using-flask.git
-
Change directory into the cloned repo:
$ cd maliMALI-marketplace-using-flask
-
Create and activate a virtual environment
# Using virtualenvwrapper $ mkvirtualenv venv # Normal way $ python3 -m venv venv $ source venv/bin/activate
-
Install needed dependancies:
(venv)$ pip3 install -r requirements.txt
-
Add and update environment variables in a
.env
file as seen in.env-template
:(venv)$ cp .env-template .env
-
Start the flask server:
(venv)$ flask run
-
Check the application in your favourite browser by pasting http://127.0.0.1:5000.