Project :- https://polling-app-frontend.onrender.com/
Backend :- https://polling.pythonanywhere.com/
This is a web-based polling application developed using Django and React. It leverages the power of Django Rest Framework, Celery, and Redis to provide a real-time polling experience.
- User-Friendly Interface: An intuitive and interactive interface for creating and participating in polls.
- Real-Time Updates: Poll results and activity are updated in real-time, providing a dynamic user experience.
- Poll Expiry: Every poll remains active for 24 hours. After that, it becomes invisible to all except its creator.
- Scalable and Efficient: Celery and Redis ensure efficient background task processing, making the application highly scalable.
- Python
- Django
- React
- Django Rest Framework
- Celery
- Redis
- Clone the repository.
- Move to Django_Backend directory.
-
cd Django_Backend
- Set up your Python environment and install the required packages.
-
pip install -r Requirements.txt
- Create 'redisurl.txt' file in base directory of django(where manage.py file is present) and keep redis cloud database uri.
- Start the Celery worker.
-
celery -A Polling worker --loglevel=info -P eventlet
- Start the Django development server.
-
python manage.py runserver
- Set up your react environment and install the required packages.
- Move to react_frontend directory.
-
cd react_frontend
- Start the React frontend (in the
react_frontend
directory). -
npm install
-
npm start
- Visit the application in your web browser and start creating and voting on polls.
- Polls will automatically become inactive after 24 hours.