SkyCrypt icon indicating copy to clipboard operation
SkyCrypt copied to clipboard

External Theme Providers

Open nstringham opened this issue 4 years ago • 2 comments

Is your suggestion related to a problem? Please describe in detail. This suggestion would allow users to have many more themes available to them without the need for SkyCrypt to maintain a overwhelmingly large list of themes

Describe your suggestion Theme creators could host a JSON file containing a SkyCrypt theme at a spastic url. Users would simply paste the url into SkyCrypt and the client would handle fetching validating and applying the theme.

SkyCrypt would store two values in local storage: the JSON of the current theme so that it can be quickly applied on page load, and the url of the current theme to update the JSON with. The client could also store a list of previously used theme URLs to allow you to switch between multiple themes.

Describe alternatives you've considered An alternative would be to allow the user to paste the JSON of the desired theme in directly however the disadvantage of this is that it would not allow theme authors to remotely update the theme as changes happen to the site

Additional context If this feature was added I would likely add an option for SkyCrypt themer users to publish their themes to a URL This would allow SkyCrypt thememer users to use custom themes on devices that do not run desktop Chrome such as iPhone and Android

nstringham avatar Jul 11 '21 07:07 nstringham

Sounds like a good idea, also gives us a good reason to expand the theme options, I'll just have to look into if there are any problems with XSS

bishoperic avatar Jul 11 '21 16:07 bishoperic

I'll just have to look into if there are any problems with XSS

I think Response.json() is good enough to sanitize for us as long as we never use eval()

nstringham avatar Jul 11 '21 20:07 nstringham