2021-02-08 20:07:51 +00:00
2021-02-12 11:58:32 +00:00
* ToDo [1/4]
2021-02-08 20:07:51 +00:00
2021-02-12 11:58:32 +00:00
- [-] Meta [2/5]
- [X] README
- [X] Prettify README
- [X] License
- [X] Usage
- [X] Contributing
- [X] Attributions
2021-02-11 12:38:20 +00:00
- [X] LICENSE
2021-02-08 20:07:51 +00:00
- [ ] CONTRIBUTING
- [ ] Link to ARCHITECTURE
- [ ] ARCHITECTURE
- [ ] Where’ s the thing that does X?
- [ ] What does the thing that I am looking at do
- [ ] Inspiration
- [ ] [[https://github.com/kubecost/docs/blob/master/architecture.md ][kubecost architecture.md ]]
- [ ] [[https://github.com/git/git-scm.com/blob/master/ARCHITECTURE.md ][git-scm architecture.md ]]
- [ ] [[https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/dev/architecture.md ][rust-analyzer architecture.md ]]
- [ ] TODO
- [ ] Clear all tasks
2021-02-12 11:58:32 +00:00
- [-] Backend Django [1/5]
2021-02-11 12:38:20 +00:00
- [X] Base setup for DJango + Vue
2021-02-12 11:58:32 +00:00
- [-] Async (RQ mostly) job to download the equity [[https://www.bseindia.com/markets/MarketInfo/BhavCopy.aspx ][bhavcopy zip ]] every day at 6 PM for the current date
2021-02-11 12:38:20 +00:00
- [X] Verify [[https://www.bseindia.com/download/BhavCopy/Equity/EQ050221_CSV.ZIP ][this link ]] doesn't change per day (check web archive)
2021-02-08 20:07:51 +00:00
- this changes everyday, the zip file is of the format "EQ`DDMMYY`_CSV.ZIP"
2021-02-11 12:38:20 +00:00
- [X] RQ job to which starts at 6 pm
- [X] extracts and parses the CSV file in it
- [X] dump data into postgres and redis
- [X] if fails at 6 pm starts again after 5 mins + potential code for alert
- [X] Writes the records into Redis into appropriate data structures (Fields: code, name, open, high, low, close)
- [X] make multiple endpoints
2021-02-12 11:58:32 +00:00
- [ ] Invalidate old data
- [ ] When it has 2 days work of data in postgres only populate that with today
2021-02-11 12:38:20 +00:00
- [-] Endpoint to serve main app
- [X] If cache empty load from postgres and put it into redis
2021-02-12 11:58:32 +00:00
- [ ] Default redis endpoint fails
2021-02-08 20:07:51 +00:00
- [ ] Button for Pagination
- [ ] No Pagination
- [ ] Pagination to return 100 entries
- [ ] Login
- [ ] Open endpoint without login
- [ ] Allow google auth for emails ending in `zerodha.com` or `zerodha.tech` or `shenoy.ameya@gmail.com`
- [ ] JWT
- [ ] Optionally have a demo username and password for login
2021-02-12 11:58:32 +00:00
- [ ] Documentation
2021-02-08 20:07:51 +00:00
2021-02-12 22:35:27 +00:00
- [-] Frontend Vue [5/7]
2021-02-12 11:58:32 +00:00
- [X] Landing Page
- [X] Prettify Bhav Copy Page
2021-02-11 12:38:20 +00:00
- [X] Renders a simple VueJS frontend with a search box that allows the stored entries to be searched by name and renders a table of results and optionally download the results as CSV. Make this page look nice
- [X] Search field to search on name
- [X] Button to download searched results as CSV
2021-02-12 11:58:32 +00:00
- [X] Veutify raise alert on error or success
2021-02-08 20:07:51 +00:00
- [ ] Handle login
2021-02-11 12:38:20 +00:00
- [ ] On table bar per quantity in cell
2021-02-12 22:35:27 +00:00
- [X] Red for stocks going down, green for up
2021-02-08 20:07:51 +00:00
2021-02-12 11:58:32 +00:00
- [X] Deploy [4/4]
- [X] Docker
- [X] Dockerfile
- [X] docker-compose.yml
- [X] Productionize K8s
- [X] Make Architecture diagram
- [X] [bullish.codingcoffee.me](https://bullish.codingcoffee.me)