A basic B2B e-commerce web application focusing on security, real-time updates, and role-based functionality. This is a full-stack application using modern technologies while adhering to best practices.
Check out more images in the docs/images
folder!
This project follows the MVC design pattern for the backend.
- Python
- Flask
- SQLite
- Typescript
- React
- Next.js
- Python version
3.12.8
- SQLite (no setup required, db file included)
- Node version
v22.13.0
- Change directory to
server/
. - Create a virtual environment
virtualenv .venv
. Installvirtualenv
is you haven't yet. Install withpip install virtualenv
and check your installationvirtualenv --version
. - Activate the virtual environment
source .venv/bin/activate
(for Mac) and.\.venv\Scripts\Activate
(for Windows). - Once the virtualenv has been activated, run
pip install -r requirements.txt
. - Rename
server/secrets-sample.env
toserver/secrets.env
. - Change directory to project root
b2b-ecommerce
. - Run wsgi.py with the command
python3 wsgi.py
.
If you are having trouble with virtualenv, check out the README-Create-Virtualenv.md
file in the root directory of this project.
- Change directory to
frontend/
. - Install all packages with
npm install
. - Rename
sample.env.local
to.env.local
. - Run the development server using
npm run dev
. - Go to
http://localhost:3000/
to see the UI.
If you have a Mac, I've created bash files to setup the backend and frontend for you.
Just run setup_backend.sh
and setup_frontend.sh
in two separate terminal instances/tabs/windows.
bash setup_backend.sh
bash setup_frontend.sh