https://github.com/chinmayagrawal775/stockmarket-using-django-channels-celery
Real-Time Stock Market Price Cheking App Built Using Django, Celery, Django-Channels, WebSockets.
https://github.com/chinmayagrawal775/stockmarket-using-django-channels-celery
celery-redis django django-celery django-celery-beat django-celery-results django-channels python redis-cache websockets
Last synced: about 1 month ago
JSON representation
Real-Time Stock Market Price Cheking App Built Using Django, Celery, Django-Channels, WebSockets.
- Host: GitHub
- URL: https://github.com/chinmayagrawal775/stockmarket-using-django-channels-celery
- Owner: chinmayagrawal775
- Created: 2023-04-21T11:25:55.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-08-21T14:01:53.000Z (9 months ago)
- Last Synced: 2025-03-29T10:18:24.132Z (about 2 months ago)
- Topics: celery-redis, django, django-celery, django-celery-beat, django-celery-results, django-channels, python, redis-cache, websockets
- Language: Python
- Homepage: https://www.linkedin.com/posts/chinmayagrawal775_python-django-djangodeveloper-activity-7055530943628947456-CglY
- Size: 54.7 KB
- Stars: 19
- Watchers: 2
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Real-Time Stock Market Price Checking App Built Using Django, Celery, Django-Channels, WebSockets.

[](https://www.python.org/)
[](https://github.com/ellerbrock/open-source-badges/)## About Project 📄
This Real-Time Stock Market Price Checking App Built Using Django, where user can select the one or multiple stocks from the list and can check their price in Real-time which updates frequently. It Store the User Session ID in the database on temporary basis. Session ids are further used to send data to user.## Project Functionalities ⚙
- No Login/Signup required.
- Select the Stocks to Watch for.
- Click on `Submit` button to see their Real-time prices.
- Click on `View Details` button to see more details of the given Stock.
- `Django-Sessions` to track the User Selected Stocks on a temporary basis.## Technologies Used 👨💻
- `Django` - For Coding Backend of Application.
- `Django-Celery` - To Add the tasks in the Queue.
- `Celery-beat` - To add tasks to Queue
- `Memurai/Redis` - It is used as a Message Broker & For Adding a Django Channel Layer in Backend.
- `Django-Channels` - For using `WebScokets` to establish Real-time Communication, to update the Stock Price Regularly.
- `SQLite` - Used this Default DataBase for Storing Data on temporary basis.
- `DTL` - Django Template Language for Building Dynamic Pages.
- `JavaScript` - For Integrating Additional functionalities in Project.
- `Bootstrap 5` - For UI Development of Project.
- `FontAwesome` - For embedding icons in Project.
- `HTML/CSS` - For Coding Basic Templates of Project.## Demo Of Application
To Watch the Live Demo Of Application click on the Below Given Link.
[View Demo](https://www.linkedin.com/posts/chinmayagrawal775_python-django-djangodeveloper-activity-7055530943628947456-CglY) 🚀.### Here Are Some ScreenShots of The Application
![]()
![]()
![]()
## How to Run This Application on local Server
To run this application on your local development server you need to run the following commands. Run Each Command in the new Terminal. (These commands are for Windows OS)To Run the Django Development Server :
```BASH
python manage.py runserver
```
To Start the Celery Worker :
```BASH
celery -A stockmarket.celery worker --pool=solo -l info
```
To Start the Celery Beat Scheduler :
```BASH
celery -A stockmarket beat -l INFO
```> Note: In case if there are uncompleted tasks in left in the queue, due to which it is sending old details of stocks, then you need to clear the queue using the below command.
```BASH
celery -A stockmarket purge -f
```## Note
If You are Learner, or Want to test this application, Then After Forking & Cloning, You Can use these `Test Credentials` for accessing the Admin Panel of Application to see how it stores `User Sessions` on temporary basis.``` PYTHON
- #### FOR ADMIN LOGIN ####:
- ID : admin
- PASSWORD : admin
```