Hiya everyone,
I, like many others, wanted to see my Aseprite drawings on other devices without exporting PNGs or saving files back and forth. Common problem, complex solution… so naturally, I built a sync relay. It’s a small (but mighty) server that sits between Aseprite and other screens/applications, pushing structured lightweight data over the wire as you draw.
What it does
- Draw in Aseprite, a separate viewer window updates in real time no manual export, no save step
- Works across screens (dual monitor workflow, great for having a zoomed-out reference while you work zoomed in, can be focused with OBS too)
- Also syncs to an iPad companion app so I can see and paint on my work from the sofa
- Palette changes sync too, update a colour and it cascades everywhere
- Project structure is database-backed with version history and async backups (this is a byproduct of the relay server!)
How it works
- Aseprite extension pushes structured pixel data to a relay server (Go, WebSocket, async postgresql runner) - packets are tiny if handled correctly.
- The viewer (a lightweight standalone app) connects to the same relay and renders whatever’s being drawn
- The iPad app connects the same way
- devices see changes as they happen, no polling, no file watching (you can even join someone elses session as a read-only viewer… another cool side effect)
Demo Video
Status
The core sync works. I’m hardening the relay and polishing the clients before a proper release. I’ll also be looking for people to help test and break it, especially streamers or professional artists pushing real workloads through it. If that’s you, I’d love to hear from you, if that’s not, I’d still love to hear from you! Any feedback or suggestions welcome, there’s a lot possible with this infra in place.
