bullish/TODO.org

68 lines
2.9 KiB
Org Mode
Raw Permalink Normal View History

* ToDo [1/4]
- [-] Meta [2/5]
- [X] README
- [X] Prettify README
- [X] License
- [X] Usage
- [X] Contributing
- [X] Attributions
- [X] LICENSE
- [ ] CONTRIBUTING
- [ ] Link to ARCHITECTURE
- [ ] ARCHITECTURE
- [ ] Wheres 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
- [-] Backend Django [1/5]
- [X] Base setup for DJango + Vue
- [-] 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
- [X] Verify [[https://www.bseindia.com/download/BhavCopy/Equity/EQ050221_CSV.ZIP][this link]] doesn't change per day (check web archive)
- this changes everyday, the zip file is of the format "EQ`DDMMYY`_CSV.ZIP"
- [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
- [ ] Invalidate old data
- [ ] When it has 2 days work of data in postgres only populate that with today
- [-] Endpoint to serve main app
- [X] If cache empty load from postgres and put it into redis
- [ ] Default redis endpoint fails
- [ ] 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
- [ ] Documentation
- [-] Frontend Vue [5/7]
- [X] Landing Page
- [X] Prettify Bhav Copy Page
- [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
- [X] Veutify raise alert on error or success
- [ ] Handle login
- [ ] On table bar per quantity in cell
- [X] Red for stocks going down, green for up
- [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)