This repo is an REST API for "UniLife" mobile app. UniLife mobile app is a blog app where users can share about their memories at university.
The main features that have currently been implemented are:
- Read posts(no need to login)
- Create / Update / Delete the post.
- Like / Save / Comment the post
- Authentication and Authorization(oject-level)
- Token Authentication
- User Profile
- Follow / Unfollow
- Search posts
Backend - Django REST Framework
Database - Postgres
Hosting - AWS Lambda, AWS S3 Bucket, AWS RDS
The endpoint used in production is priavate. However, you can test on this mock server
Note: Click and download the image to see details. ![Entity–relationship model](https://github.com/pyaephyokyaw15/UniLife/blob/main/ERD.png]
To get this project up and running locally on your computer:
-
Clone the project.
git clone [https://github.com/pyaephyokyaw15/UniLife.git]
-
Set up the Python development environment.
Note: I want to recommend using a Python virtual environment.
-
Create .env file in the project root directory and create variables used in settings.py.
-
Assuming you have Python setup, run the following commands (if you're on Windows you may use
py
orpy -3
instead ofpython
to start Python):pip3 install -r requirements.txt python3 manage.py makemigrations python3 manage.py migrate python3 manage.py collectstatic python3 manage.py test # Run the standard tests. These should all pass. python3 manage.py createsuperuser # Create a superuser python3 manage.py runserver
-
Open a browser to
http://127.0.0.1:8000.
-
Admin Site:
http://127.0.0.1:8000/admin