Of the popular 1980s 8-bit computers, it’s fair to say that Sinclair’s ZX Spectrum punched above its weight. Sir Clive’s love of squeezing more functionality out of less hardware meant the compromises he made left it less powerful than competitors from Apple, Commodore, or Acorn. Still, the brightest programmers of the age took the little machine to heart and made it do some very impressive things. A desktop GUI, though, surely that would be pushing things too far. Never say never because now [mindbox77] has done it.
ZXdesk is an assembly language program for the 48k Spectrum that gives you something that looks a lot like GEM. It’s got all the things you’d expect from a desktop GUI, with menus, windows, and applications, and we find ourselves suitably impressed.
For all that, though, is it really an operating system? If you take an OS to be a general-purpose host for executable programs run independently from disk, like the one you’re almost certainly using right now, then of course not. Though Amstrad would eventually produce a Spectrum with a 3″ disk drive, the Spectrum 48k that this runs on does not have any form of disk. Thus the applications are built into the GUI rather than existing as separate programs. On the other hand, aside from the impressive feat of making the ZX do a GUI, it’s probably the closest to an OS we’ve ever seen on this classic rubber-keyboard home computer.
Long-term readers will note that this isn’t the first time the Spectrum has seen an impossible achievement made real.

My first encounter with a GUI was with the Spectrum game Shadowfire:
https://en.wikipedia.org/wiki/Shadowfire_(video_game)
You moved the pointer to a UI element with your joystick or the keyboard and clicked. I didn’t realise then the depths of the ocean into which I had dipped my toes.