It is an online store API system built on Django Rest Framework. It contains everything you need to add products and use as a quality store.
I'll be happy if you provide any feedback or code improvements or suggestions.
Connect with me at:
📫 How to reach me: [email protected]
- Django - 4.1.3
- Django Rest Framework - 3.14.0
- Django Rest Framework Simple JWT - 5.2.2
- Django Environ - 0.9.0
- Faker - 16.6.1
- pytest-django - 4.5.2
Cloning the Repository:
$ git clone github.com/Saidalo1/online_shop_api.git
$ cd online_shop_api
Installing the environment control:
$ pip install virtualenv
$ virtualenv env
Activating the environment:
on Windows:
env\Scripts\activate
on Mac OS / Linux:
$ source env/bin/activate
Installing dependencies:
$ pip install -r requirements/base.txt
Create a .env file on ecom folder (/root/.env) setting all requirements without using space after "=".
Copy and paste on our .env file:
# Secret key
SECRET_KEY=SECRET_KEY
# Database settings
DATABASE_NAME=DATABASE_NAME
DATABASE_USER=DATABASE_USER
DATABASE_PASS=DATABASE_PASS
# Email settings
EMAIL_HOST_USER=YOUREMAIL
EMAIL_HOST_PASSWORD=YOUREMAILSHOSTPASSWORD
Installing MAKE:
On Mac OS & Linux:
sudo apt install make
sudo apt install build-essential
On Windows:
1. Press Win + X keys together to open the Power menu.
2. Select Windows Powershell(Admin).
3. Type the command ‘Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))' and press Enter
4. Downloads and installs chocolatey as available from their official source: https://community.chocolatey.org/courses/installation/installing?method=installing-chocolatey#powershell
5. Type choco to verify if the installation worked.
6. Now, type the command ‘choco install make‘ to install Make.
7. Go to the installation directory C:\Program Files(x86)\GnuWin32\ to confirm the installation worked.
Install HStoreExtension:
With database:
sudo su - postgres //switch to postgres user
\c DATABASENAME; //connect your database
CREATE EXTENSION IF NOT EXISTS hstore; //create extension
With migrations:
Add "HStoreExtension()" to your operations in migrations.
Type this command to make migrations and migrate:
make mig
Create a super user:
$ make admin
Finishing running server:
$ python manage.py runserver
Add some random data:
$ python manage.py create
To test project:
$ pytest
You can send how many PR's do you want, I'll be glad to analyse and accept them! And if you have any question about the project...
📫Email-me: [email protected]
Thank you!
This project is licensed under the MIT License - see the LICENSE.md file for details.