A Django-based social networking platform backend with real-time chat, posts, profiles, and activity feeds.
- User Authentication - Registration, login, password reset with OTP verification
- Profiles - User profiles with work experience, education, skills, and locations
- Posts - Create, like, and comment on posts
- Chat - Real-time messaging with WebSocket support
- Activity Feed - Notifications for likes, comments, follows, and connections
- Connections - Follow users and manage connections
- Onboarding - User onboarding flow with topic selection
- Framework: Django 5.2 + Django REST Framework
- Database: PostgreSQL 15
- Cache/Message Broker: Redis 7
- ASGI Server: Daphne (WebSocket support)
- Object Storage: MinIO (S3-compatible)
- Documentation: drf-spectacular (Swagger/OpenAPI)
- Containerization: Docker & Docker Compose
- Docker & Docker Compose
- Python 3.10+ (for local development)
# Clone the repository git clone <repository-url> cd BizBuch-Backend # Start all services docker compose up -d # View logs docker compose logs -f web
The API will be available at:
- API: http://localhost:8000
- Swagger Docs: http://localhost:8000/api/docs/
- pgAdmin: http://localhost:5050
- RedisInsight: http://localhost:5540
- MinIO Console: http://localhost:9001
# Create virtual environment python -m venv venv source venv/bin/activate # Linux/Mac # or venv\Scripts\activate # Windows # Install dependencies pip install -r requirements.txt # Set up environment variables cp .env.example .env # Edit with your settings # Run migrations python manage.py migrate # Start development server python manage.py runserver
| Variable | Description | Default |
|---|---|---|
DEBUG |
Debug mode | True |
DB_HOST |
PostgreSQL host | db |
DB_PORT |
PostgreSQL port | 5432 |
POSTGRES_DB |
Database name | bizbuch |
POSTGRES_USER |
Database user | postgres |
POSTGRES_PASSWORD |
Database password | postgres |
REDIS_HOST |
Redis host | redis |
AWS_ACCESS_KEY_ID |
MinIO/S3 access key | - |
AWS_SECRET_ACCESS_KEY |
MinIO/S3 secret key | - |
AWS_S3_ENDPOINT_URL |
S3 endpoint URL | - |
AWS_S3_BUCKET |
S3 bucket name | bizbuch |
OTP_VERIFICATION_ENABLED |
Enable OTP verification | False |
BizBuch-Backend/
βββ accounts/ # User authentication & management
βββ activity/ # Notifications & activity feed
βββ chat/ # Real-time messaging
βββ core/ # Core middleware & utilities
βββ intelligence/ # Recommendation services
βββ onboarding/ # User onboarding flow
βββ posts/ # Posts, likes, comments
βββ profiles/ # User profiles & connections
βββ uploads/ # File upload services (S3)
βββ mysite/ # Django project settings
βββ docker-compose.yml
βββ Dockerfile
βββ requirements.txt
βββ manage.py
Once the server is running, visit:
- Swagger UI: http://localhost:8000/api/docs/
- OpenAPI Schema: http://localhost:8000/api/schema/
# Start services docker compose up -d # Stop services docker compose down # Rebuild after dependency changes docker compose up --build web # Restart web service (for code changes) docker compose restart web # Run migrations docker compose exec web python manage.py migrate # Create superuser docker compose exec web python manage.py createsuperuser # Access Django shell docker compose exec web python manage.py shell # View logs docker compose logs -f web
# Using Docker docker compose exec web python manage.py test # Local python manage.py test
This project is proprietary software. All rights reserved.
- BizBuch Team