Bloodmallet / bloodmallet_web_frontend

Frontend of bloodmallet.com
https://bloodmallet.com
1 stars 8 forks source link

Adds Trinket Compare #113

Open Ellimistdev opened 1 year ago

Ellimistdev commented 1 year ago

Needed a good way to see a trinket's impact across multiple specs.

Adds:

trinkets_balefire_branch_454_castingpatchwerk trinkets_caged_horror_486_castingpatchwerk3

Outstanding todos:

MVP: - Hook into db instead of fetching everything like a goblin - Need to add trinket-specific queries instead of needing to get ALL trinkets for ALL specs 😒 - Server-side data handling

Midterm:

Longterm:

Bloodmallet commented 1 year ago

This looks great! Let me add some information:

Midterm:

Better trinket selection dropdown (scrolling at a minimum): [this](https://getbootstrap.com/docs/4.0/components/dropdowns/#options)  should hopefully help
Item_level handling for non-existent item levels for items: when collecting trinket information each trinket should already know about which itemlevels are present for it. this can be used to filter the list or create it
Update fight_style in chart title.: 👍 
Trinket menu colors? Just picked Rogue.: I'd probably pick priest because it's the most neutral "color"

Longterm:

Swap item_name for item_id throughout to aid in localization: 👍 
Drilldown links: trinket_compare to trinkets: sounds great!
Ellimistdev commented 7 months ago

Finally picked this back up!

I reworked this so that it does not constantly self-crawl the site. Given that we currently receive all item data for any one spec, to generate these charts, we only need to hit each spec once and cache the result in localstorage (updated every 30 minutes). Additionally, I extracted several functions from bloodmallet_chart_import() to reduce complexity and improve reusability.

As far as I can tell, these changes don't impact existing functionality, though I have not ventured into accounts and custom charts.

TrinketCompare

Bloodmallet commented 7 months ago

Sounds great! I'll need some time to review it. I'm currently busy preparing my own chart implementations and that's occupying my attention. I'll hopefully get back to you soon on this. 👍