Work on the long-awaited skins feature for Deviant Love is underway, but has hit a snag. This arose from a desire to provide two important features of skins:
- Skins will be written in CSS, granting skin authors the full power of CSS to give Deviant Love a makeover.
- Skins will be distributed as deviations - users can explore Deviant Love skins as they'd explore any other artwork on DeviantArt, and Deviant Love will detect them and provide an installation button on the deviation page.
The original idea to achieve these goals was to have the skin just be a CSS file, which you'd upload to DeviantArt as the downloadable file along with a preview image. Unfortunately, it seems that uploading any plain text file, even one with .css or other file extensions, causes DeviantArt to treat your skin as a literature deviation, with all its text to be displayed on the website. Setting a preview image just displays it as a header above the text.
There are a few ways I could work around this:
- Just roll with it and have Deviant Love detect the "literature" text as a skin - I'm leaning heavily against this option. Users deserve better than having a bunch of code thrown onscreen.
- Require that the CSS be put into a .zip file
- Require that the CSS be added as metadata to an image, allowing a single file to serve as both the skin and the image shown on DeviantArt, similar to how PICO-8 cartridges work
For the latter two options, I could create a service where you'd load your CSS file and have it processed into the appropriate file type. This would also let me add some metadata to your skin, such as which version of Deviant Love it's meant for - but this metadata could just as easily be something you'd write yourself as a CSS comment.