Problem: Many news platforms lack real-time notifications, subscription-based updates, and efficient content management, resulting in disconnected user experiences.
Solution: News Portal — a Django-based news platform with category subscriptions, instant email notifications, and weekly digests powered by Celery and Redis.
Technologies: Python, Django 4.2, Celery, Redis, django-allauth, Bootstrap.
Result: Increased user engagement, timely delivery of news, and simplified content management.
git clone https://github.com/Rostislav62/NewsPortal-Var1.git NewsPortal
cd NewsPortal
python3.10 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
.env
:
SECRET_KEY=<strong-secret>
DEBUG=True
ALLOWED_HOSTS=127.0.0.1,localhost
EMAIL_BACKEND=django.core.mail.backends.console.EmailBackend
CELERY_BROKER_URL=redis://127.0.0.1:6379/0
CELERY_RESULT_BACKEND=redis://127.0.0.1:6379/1
python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser
sudo apt install -y redis-server
sudo systemctl enable --now redis-server
celery -A NewsPortal worker -l info
celery -A NewsPortal beat -l info
python manage.py runserver