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.
Definitely a cool project and wanted to say thanks for sharing. Continuing on the conversation, I’ve been able to solve my particular needs with nextcloud. Obviously not a full OS interface, but it does have a lot of the same core features. Their file management system with RBAC and customizable link sharing works pretty well for me.
Thanks!
I tried nextcloud initially. It seemed a bit bulky and slow for me, with a lot of extra stuff I wasn’t going to use. I know you can disable features and customize it, but it just wasnt really a good fit for me.
This initially started as an exercise to find out what is possible and see what I could manage to do by myself. As I progressed, I started realizing the possibilities and am so far very happy with how it’s turning out.
I honestly didn’t realize there were so many existing alternatives (orb, ArozOS, etc). However, this is built entirely in react and can therefore load and run any JavaScript/HTML easily as a plugin. I think it’s a bit more modular than the alternatives in that sense.
Either way it’s been a fun project to work on, and it fits my needs exactly how I want.
After seeing all the responses I’ll very likely make it all open source so maybe others can contribute and customize it for themselves. Although I am a bit shy to release my code to public scrutiny lol 😂. I have a bad habit of not leaving comments and I’m sure there are plenty of places where people will point out flaws and wonder why the hell I did x instead of y…