type
summary
created
Tue Apr 07 2026 02:00:00 GMT+0200 (Central European Summer Time)
updated
Tue Apr 07 2026 02:00:00 GMT+0200 (Central European Summer Time)
sources
raw/notes/techContext
tags
tech-stack infrastructure deployment angular django postgresql pm2 nginx

Tech Context Summary

abstract
B2BPaper runs on Angular 19 (frontend) + Django REST Framework (backend) + PostgreSQL, deployed on a single Contabo VPS with PM2 process management, Nginx reverse proxy, and Celery+Redis for async tasks.

Frontend Stack

See wiki/concepts/angular-frontend-stack for full details.

Backend Stack

See wiki/concepts/django-app-layout for the app-by-app breakdown and wiki/concepts/service-layer-pattern for the business logic organization.

Infrastructure

See wiki/concepts/pm2-process-layout and wiki/concepts/nginx-mvp-routing for infrastructure details.

Deployment URLs

URL Purpose
https://b2bpaper.xdvu.com/mvp/ Marketplace root (redirects to Swagger)
https://b2bpaper.xdvu.com/mvp/api/docs/ Swagger UI
https://b2bpaper.xdvu.com/mvp/admin/ Django Admin
https://b2bpaper.xdvu.com/mvp/static/ Static files
http://127.0.0.1:8910 Direct gunicorn (internal only)

See wiki/concepts/deployment-urls for the full URL map.

Key Integrations (Planned and Implemented)

Integration Status Technology
Email Ingestion Planned Celery task + email client
Excel Parsing Planned openpyxl or pandas
Newsletter Generation Planned Django email + Celery scheduling
Matching Algorithm Planned Custom Django service + future ML
Container Fill Optimization Implemented apps/containers/services.py

The container fill optimization is the most mature integration, with a full service layer, scoring system (0-100), product compatibility checks, and freight rate comparison with fallback rates.

Constraints

Sources

Related