This is neat, some years ago i also thought of making a simple DPaint clone (though much simpler than what this project seems to do) and started by... painting the tool icons, then losing interest :-P. I did end up reusing them for a pixelart editing component for Lazarus though[0] (and put the icons in my "Bad-Common-Icons" icon set[1] that i use for my GUI programs). But i do want to, at some point, tackle making something like Paint Shop Pro 7 (for desktop, not web) because i think it has the best UX of all image editing programs (including later versions of PSP which i never liked).
That said, i played with this a bit and found some bug with the smudge tool blending[2]. It also seems browser-related as it has different behavior in Firefox and Falkon (which uses QtWebEngine / Chromium). Also the way opacity works with the smudge tool feels weird/wrong as even at 1% it seems to affect the image a lot even though it should barely make a difference.
I've been following this app for a while. Worth noting that the author is also a very talented graphic artist and demoscener. Works created with this tool frequently appear in various demoscene compos.
The vanilla JS with zero dependencies is refreshing. Looking through the code, it's surprisingly readable for something handling Amiga file formats and color cycling.
The demoscene connection makes sense. That community has always valued doing more with less.
How is this like DeluxePaint? For me DeluxePaint's defining feature is how brushes work. You press B, you select some pixels, those pixels immediately become your brush that you draw with
Nice! The code looks pretty neat! And also somehow clean. I like those projects, without all those boring constraints you have in "enterprise" or even worse start-up code.
Deluxe Paint 2 for DOS was my favorite drawing program, so had to check this out, pretty nice!
The only thing that stops me from recommending it is non-integer zoom levels, which is especially bad for pixel art.
Moving layers around was also confusing, had to click Layer → Transform → Free Transform to be able to move things around. It would be much more obvious if there was a move icon in the tool panel that does just that.
Another Deluxe Paint clone is PyDPainter. It's Python-based and available for Windows, Mac, and Linux. The UI is very much reminiscent of the original.
Nice. Vanilla js with a pretty clean code. From a quick look there is some components architecture and they are decoupled via an events bus. I used to implement evented architectures in winform apps in the past. On the one hand it may seem insane but in practice it was a really good choice.
Web-based image editor modeled after Deluxe Paint
(github.com)244 points by bananaboy 25 January 2026 | 30 comments
Comments
That said, i played with this a bit and found some bug with the smudge tool blending[2]. It also seems browser-related as it has different behavior in Firefox and Falkon (which uses QtWebEngine / Chromium). Also the way opacity works with the smudge tool feels weird/wrong as even at 1% it seems to affect the image a lot even though it should barely make a difference.
[0] https://i.imgur.com/kht16dJ.png
[1] http://runtimeterror.com/tools/icons/
[2] https://github.com/steffest/DPaint-js/issues/50
wxWidgets is oldschool, QT has license issues, GTK looks so-so except on Linux, TCL/TK looks ugly everywhere.
In the modern world we need some GPU accelerated GUI library. Something like the one used in SublimeText. But with BSD or MIT license of course.
That would be much more interesting for me.
https://www.youtube.com/watch?v=VyB5cvA6f78
EDIT: I see he posted a link at the bottom of the Readme.md I guess I should have scrolled to the bottom first.
The demoscene connection makes sense. That community has always valued doing more with less.
https://classicreload.com/play/dosx-deluxe-paint-animation.h...
This clone doesn't do that, therefore it's not remotely like Deluxe Paint and it's disingenously to claim it's modeled on it.
I run DPII in DoxBox on Linux like this:
dosbox DP.EXE
Something I don't see in your app is the Perspective tool.
The only thing that stops me from recommending it is non-integer zoom levels, which is especially bad for pixel art.
Moving layers around was also confusing, had to click Layer → Transform → Free Transform to be able to move things around. It would be much more obvious if there was a move icon in the tool panel that does just that.
https://github.com/mriale/PyDPainter
This is surprising given it's a web application in modern age, did not expect that.