dashy
dashy copied to clipboard
[FEATURE_REQUEST] Capture option for icons
Is your feature request related to a problem? If so, please describe.
Kinda. I have a bunch of locally hosted services that are IOT-based and only run using HTTP. That means I get an insecure warning when I use their paths for icons in dashy. Also, I don't like the idea of dashy making HTTP requests every time it starts up for all the icons if it isn't needed (I know they're cached, but there are other reasons that sometimes icons just break). I have been rectifying this SLOWLY by fetching all the icons manually and storing them in item-icons.
Describe the solution you'd like
A flag that will do a run-once capture of the icon for the webapp, by favicon or path or whatever, then download and store the icon locally (in item-icons) and update the item icon path to suit. It would ensure icons are always available, so increase the start speed of dashy, remove any insecure flag, and ensure it always looks as pretty as possible!
Priority
Low (Nice-to-have)
Is this something you would be keen to implement
No
Welcome to Dashy 👋 It's great to have you here, but unfortunately your ticket has been closed to prevent spam. Before reopening this issue, please ensure the following criteria are met.
Issues are sometimes closed when users:
- Have only recently joined GitHub
- Have not yet stared this repository
- Have not previously interacted with the repo
Before you reopen this issue, please also ensure that:
- You have checked that a similar issue does not already exist
- You have checked the documentation for an existing solution
- You have completed the relevant sections in the Issue template
Once you have verified the above standards are met, you may reopen this issue. Sorry for any inconvenience caused, I'm just a bot, and sometimes make mistakes 🤖
Sad face. I do not know how to re-open this issue, and I think it's a useful idea.
Lemme reopen, sorry about that
So like server-side download and caching? Sure that would indeed be possible
Worth noting though, in your instance, this wouldn't have any impact on performance, resources that have been saved within Dashy are still going to be fetched the same way as other assets from locally running services. The only benefits of this would be:
- If the caching script could also process and resize icons (requesting large assets is probably why your situation is slow)
- If the target service goes offline, the icon can still be available
So would function like this:
- When app loaded, check if running in server mode
- For each asset, try and fetch it locally
- If available locally, display and return
- Else, display the web version, and send request to backend to cache for next time
- Cached images should be normalized, resized, and saved as a hash of their URL
My only reservation is that there is a fair bit of complexity for this simple task, so I'm not sure that the benefits to the average user would be worth the time / cost it would take for me to develop this
Hi Lissy,
I’m a big fan of Dashy despite not yet using it to full potential. It’s beautiful AND functional.
In my case, the target services hardware vary a lot - some run on computers - some run on ESP32 devices, some on ESP01 devices - there is a significant lag for those ones. Also, notably, I have Authelia set up as a domain (two domains, actually - two instances) authentication service. If I am not authenticated at the time Dashy tries to fetch the service icons, it fails to fetch them. Same goes for basic .htpasswd protected resources.
Adam On 24 Jan 2022, 12:58 PM +1100, Alicia Sykes @.***>, wrote:
So like server-side download and caching? Sure that would indeed be possible Worth noting though, in your instance, this wouldn't have any impact on performance, resources that have been saved within Dashy are still going to be fetched the same way as other assets from locally running services. The only benefits of this would be:
• If the caching script could also process and resize icons (requesting large assets is probably why your situation is slow) • If the target service goes offline, the icon can still be available
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>
So would function like this:
* When app loaded, check if running in server mode * For each asset, try and fetch it locally * If available locally, display and return * Else, display the web version, and send request to backend to cache for next time * Cached images should be normalized, resized, and saved as a hash of their URLMy only reservation is that there is a fair bit of complexity for this simple task, so I'm not sure that the benefits to the average user would be worth the time / cost it would take for me to develop this
Oh Absolutely low priority. But thanks for hearing it out. As an ex dev myself, I know I prefer to hear about bugs, enhancement ideas, and potential features from active users. 👍🏻
This issue has gone 6 weeks without an update. To keep the ticket open, please indicate that it is still relevant in a comment below. Otherwise it will be closed in 5 working days.
keep open
Relevant information: I live in Australia, home to the third world of internet bandwidth poverty. 🤣
A friend in Utah sent me a speedtest.net result to compare with and it was seventy times faster than our average here. 😭
A minor note on this. I run Authelia internally, and Dashy doesn't appear to use the authenticated headers to fetch (local) favicons - another reason this would be useful.
For me this would be useful for some services which use self signed certificates. These will not load until the user visits the page and accepts the "risk" of the self signed cert.