Note: (8/7/18) - emscripten-qt is an old project (dating from 2012) using an old version of Qt (4.8.7) and is no longer developed, so I don't recommend using it. Check out Lorn Potter's work on Qt5 for WebAssembly!
Demos¶
Name | Screenshot | Weight | Notes |
---|---|---|---|
Kate | ULTRA-HEAVY | A big chunk of kdelibs plus the Kate text editor running in Emscripten! All of the plugins are disabled, so this is a very 'cut-down' version, but still very powerful (even has a Vim mode!) A large download (~35MB) with lots of data to unpack, but once it starts running it runs pretty well. This represents probably somewhere in the region of 1 million lines of C++ code ported, though not all of them are actually executed. Exposes a bug with Chrome, though: Chrome may not work at all with this version; if so, try the no icon version. Big thanks to Mozilla for sponsoring the work on this! Update 13/3: Now with much faster startup, and Chrome shouldn't steal shortcuts anymore! |
|
KTurtle | ULTRA-HEAVY | As with Kate, this is a fairly heavy download, but is pretty light afterwards - except when the Turtle gets going! Again as with Kate, you may need to use the no icon version . You can export (and "download") your picture as an SVG. Check out those dock widgets! | |
wiggly | Medium | Historically, this is usually the first demo to be tested when porting Qt to a new platform. With emscripten-qt, I've augmented it so that it serves as an example of how your emscripten-qt app can interact with the rest of the web page. | |
scribble | Light | Another example that has been augmented to show how your emscripten-qt app can interact with the rest of the webpage: this one let's you draw a picture inside Qt's "scribble" app, then actually download it as a .png! See also "textedit" which does the same, except with a rich-text document and a PDF! | |
raycasting | Heavy | Not as heavyweight as you'd think, actually :) | |
affine | Heavy | ||
pathstroke | Heavy | ||
collidingmice (asm.js) | Heavy | ||
textedit | Medium | Another example demonstrating the interaction of an emscripten-qt app and the rest of the webpage - edit your rich-text document, then "download" it as a .pdf! This was a quick and crude port, so many of the dialogs won't work. It also takes a little longer to download due to its usage of Truetype Fonts (~4MB of them) | |
dragdroprobot | Heavy | Colour in your faaabbulous robot! If you draw a head, there's only one place it can go! The cursor should change if you hover over somewhere where you cannot drop, but this doesn't seem to be supported in Chrome. Required very little porting effort, despite its use of drag-and-drop. | |
chip (asm.js) | Medium | ||
animatedtiles | Heavy | ||
embeddeddialogs | Heavy | ||
elasticnodes | Medium | ||
portedasteroids | Heavy | ||
deform | Heavy | ||
composition | Heavy | ||
lighting | Heavy | ||
tetrix | Light | ||
qstetrix | Light | As above, but this version is written in Javascript, executed by Emscripten-ised QScriptEngine which uses JavascriptCore. A C++ Javascript interpreter converted to Javascript! | |
blurpicker | Heavy | ||
chart | Light | ||
diagramscene | Light | ||
easing | Medium | ||
movingblocks | Medium | ||
puzzle | Light | ||
appchooser | Medium | ||
standarddialogs | Light | One of the hardest demos to get working with emscripten, due to the large amount of synchronous dialogs that needed to be made asynchronous. | |
basicdrawing | Light | ||
states | Medium | ||
stickman | ULTRA-HEAVY | The huge rendering area makes this one pretty punishing :) "J" makes your dude Jump; "D" dance; and "C" chill. Should he be unlucky enough to be hit by lightning, you'll need to refresh the page. | |
concentriccircles | Heavy | ||
imagecomposition | Light | ||
painterpaths | Light | ||
stylesheet | Light | ||
transformations | Light |
Contact¶
My email address is at the "etotheipiplusone" domain in the URL (without the vps2), and begins with "kdedevel".
You can also contact me on my blog, or over twitter. My linkedin profile is here.