This is Django Rest Framework based starter application having following implementation
- Registration API
- Login API : JWT based authentication and authroization
- User API
- ToDo API
- Admin can view all the ToDo list
- User can view their own ToDO list only
- Swagger implementation for API documentation and Testing
- Custom Group
- Custom permissions
Django pacckages used in this projects are
I have used python3.8 for the development environment
- $ pip install django
- $ pip install djangorestframework==3.11
- $ pip install djangorestframework-jwt
- $ pip install mysqlclient
- $ pip install drf_yasg
- $ pip install wheel
- $ pip install django-rest-auth
Setup & Run
-
Create virtual environment https://docs.python.org/3/tutorial/venv.html
-
Install all the necessary packages mentioned above
-
Make changes to config/settings.py for required mysql database changes https://docs.djangoproject.com/en/3.1/ref/databases/
-
Run following commands for database migrations script and create superuser in application home directory
$ python manage.py makemigrations
$ python manage.py migrate
$ python manage.py createsuperuser
-
Run the application
$ python manage.py runserver 0.0.0.0:3000
- Email Service
- Token based email verification
- Forgot and Reset Password API