Skip to content

PooyaRezaee/P-Social

 
 

Repository files navigation

P'Social

Django Rest OpenAPI Python Django

P'Social is a social networking backend project built with Django and Django REST Framework (DRF). It offers a powerful and scalable API that supports essential social media features, including user authentication, profiles, posts, comments, likes, friend management, and search functionality.

Features

  • User registration, authentication, and profile management.
  • Two-Factor Authentication (2FA) support using authenticator apps like Google Authenticator for enhanced security.
  • Social interactions: Posts, comments, likes.
  • Friendship system: Follow, unfollow, and manage requests for private/public pages.
  • Fully documented API endpoints for easy integration and testing.
  • Docker support for consistent environments.

Installation & Usage

Run Project by Docker

# just docker file
docker build . -t "webapplication"
docker run --name web_application --env-file .env --network host -d webapplication
# all services in development
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d
# all services in production
docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d

Useful commands

See std-out web application

docker logs web_application

Enter to shell WebApplication

docker exec -it web_application bash

Exec migration on docker container

docker exec web_application python manage.py migrate

Add new superuser

docker exec -it web_application python manage.py createsuperuser

Database shell

docker exec -it django-social-db-1 psql -U user -d social

Need postgres command: CREATE EXTENSION pg_trgm; for search operation

About

Bekand is a social project built with Django and djangorestframework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.5%
  • Other 0.5%