Decided I’d give a sneak peek at something I’m working on:
Since building my home server I’ve constantly been on the lookout for a decent frontend to manage my files, etc. I initially tried file browser, but it was always really buggy for me, and honestly I hated it.
Since my server is headless, a PiKVM and the like wouldn’t really work for me the way I wanted, so I decided to just build what I was looking for on my own.
And with that, I’d like to introduce: redox_os TBD
It’s an emulated OS built in react with a node+express backend. It’s made to be as fully customizable as you want. You can create new “apps” for it very easily. Anything you can make in react/JavaScript can be loaded as an “app” with just a simple config file.
It’s still very much a work in progress, but I figured it was complete enough for a little show and tell.
Current features:
- a desktop with icons/etc
- a file browser
- text editor (complete with syntax highlighting)
- a full featured terminal
- a picture viewer
- a music player
- a video player (capable of live-transcoding to an html5 compatible format)
- a file downloader (for downloading files to the server from the web)
- full drag and drop capabilities (even drop files from outside your browser to upload)
- downloading files from the server to local
- full mobile/touch support
I’m also still very much deciding how to handle the release. It’s mostly functional already, but I’d really want it to be polished before a proper release.
Since I also have a full time job, that may take a while. Contributors would definitely help, but I’m also a little split on whether I should make if FOSS. I’m definitely leaning so, but idk.
Definitely open to any feedback, suggestions, criticism, etc.
Edit: Thanks to everyone for the feedback! Looks like I’ll definitely be going FOSS. Also I’ll be changing the name 😄
Not sure what to call it now though. Maybe reDOS? Lol
I still wanna tidy everything up a bit before making the code public. Maybe go back and start adding some comments/documentation as currently there is none. I’m really terrible about that.
Also definitely a bit shy to open up my code to public scrutiny haha. I’m sure there are plenty of mistakes and bad practices.
Might want to rethink the name Redox OS already exists and is a pretty active project to create a modern OS in Rust
Oh damn good call haha.
I guess I never bothered to check. I’m not married to the name so it’s no big deal really. I was initially just building this for myself without any real plan to release anything so I chose my artist/producer handle and never thought twice about it.
What’s the advantage of this versus just running a graphical desktop and using VNC or something?
As ikidd mentioned, definitely speed and access. It’s just a react web-app. There’s no VM required, and it’s not streaming a video capture of a desktop. I’m actually amazed at how performant it is. It loads almost instantly and feels like a regular desktop, even on mobile.
Even with all the windows open in the screenshot and streaming a transcoded video, it still uses less memory than a single open YouTube tab.
Speed and access. Being able to just bring it up in a browser would useful.
I use Kasm for this sort of thing, but it’s pretty slow at times.
You’ve done a nice job in a short time. I’d give it a spin as a jump server sort of application I could use in a browser. I currently use KasmWeb for this sort of thing, because I like having a vanilla Linux experience in a browser, but it’s kinda heavy, though faster than something like VNC and easier to poke a hole in a firewall with basic auth for access.
Thanks!
Another reason for the project was that I too wanted a desktop experience while also being being able to access remotely. I just didn’t want to open any “scary” ports on my server lol. I can throw this whole thing behind 2fa and it’s still completely isolated in a docker container, thus it has as much or as little privilege as I want.
I actually can ssh into my main server through this, if desired, without opening any ssh ports publicly.
Surely you can’t be serious!
I am serious, and don’t call me Shirley.
That’s really cool!
Looks sick
Kudos for using Geogaddi!
Had to :)
Nice
deleted by creator