Hello everyone (especially Sketch admins or other developers)!
I am a developer of audio apps, and like most audio developers I use the cross-platform JUCE framework (think Qt but a lot better and audio-focused).
https://juce.com/
My team uses Sketch for UI design, but the process of converting their sketch file to an actually implemented UI has been a pain. I started by manually converting each UI element to an object containing bounds/dimensions & other ui metadata (like font, colors, etc) and then using a relatively simple system to render these objects in JUCE.
Obviously it doesn't really make sense to have to spend a few hours manually updating everything for each change to the sketch file, so I wrote a couple scripts that would automate this whole process. .sketch files are really .zip files, so I would just change the extension to .zip, expand it, then parse the project JSON data to generate everything I needed.
Of course, this will completely break every time there is an update to sketch or any time the specific project structure for the specific few files we're using changes — not good.
I want to make a sketch plugin that will easily convert a sketch file into something that can easily be incorporated into any JUCE project.
I am already prepared to use the Sketch API to make a custom plugin, but I was wondering if people have already implemented something similar — is there already an easy way to export a sketch file into a developer-accessible format? Has anyone done this for similar frameworks?
I've seen posts about a plugin that lets you export JSON — hopefully in a simpler form than the default project structure. Do you think it would be easier to make a command-line tool that merely converts the JSON into another representation, instead of doing a full sketch plugin?
I'd love some feedback before I dive headfirst into this. Thanks for your help!