Operating System Shell made entirely in Processing

HI! Its been a passion project of mine the past 2 years to work on an operating system shell that I call “BrastinOS”. It’s made entirely with processing, in the processing editor, and has

  • a windowed environment
  • a desktop with taskbar (fully customizable)
  • a file explorer
  • a text editor
  • an image viewer
  • a settings app
  • very detailed theme support (my main goal with the OS)
  • smooth and polished animation
  • support for custom applications
    There’s a lot more stuff but its too much to remember / compile into a list

When I started the project I didn’t realise how big it would become, as at first my main goal was just to make a simple window manager. Then it slowly became making my dream operating system shell. If there was a feature I wish was in windows, I would do my best to implement it. Not everything is perfect and there’s definitely a few bugs, but I’m only one person and this is a fully functional operating system shell.

I’m guessing Processing definitely wasn’t made with this in mind at all but it’s just such an amazing platform that I end up always coming back to it to make things. It’s my go-to for any games of software because it makes things so simple yet it is so powerful.

TDLR: I made a fake operating system in processing, here are some screenshots and here is a link to try it out: https://brastin3.itch.io/brastinos


Thanks for checking this post out!

11 Likes

Incredible work @Brastin :100:
Thanks for sharing!

2 Likes

Interesting project. There’s couple of things I could see it used with.

  • File explorer based on metadata. Folder based file systems are outdated and troublesome to manage. Amount of data and files make it even harder. It’s not always clear in which folder file should be in. Sometimes it could and should be in several folders. Using metadata and tags to identify contents of a file would make location of actual file irrelevant. A separating layer (BrastinOS for example) with extended set of metadata and tags could be used to search content and give access to files.
  • I’ve been playing with idea of embedding JVM and an interpreter to OS with callback hooks to all OS features. It would make extending OS very flexible. It would enable to build new features or automation easily without the need of compilation, build or migration process.

I was a bit disappointed to learn that source code is not available and I cannot try tweaking the system. Cool project anyway.

3 Likes

Yeah I’ve considered open sourcing it but I’m a little scared to. I think I’m just one of those people who is overprotective of what they’ve made. Maybe in the future I will open source it, but right now the code is absolute spaghetti to the point where rather than continuing to update this version I’m rewriting it from scratch. (its about 8k lines right now so it’s getting difficult to manage)

1 Like

Looks awesome! :+1:

And certainly better looking than http://www.jnode.org/node/132 There are a few old attempts at Java-based OS - don’t know if you’ve looked at any - not sure I’ve seen a Processing-based one before though.

2 Likes

Great work ! I like the spirit to do his own personal tool.
Don’t forget to post on this forum when linux version will be available.
I would like to try, thanks

2 Likes

Thanks for sharing this, @Brastin. If you end up making Mac and Linux builds I would love to check them out.

are you coding in the standard ide or using something else. I work on large projects in processing 10000 line plus and honestly couldn’t do it with visual studio code. Its slightly slower to the program, but the code management is amazing.