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.
Interesting 🤔 I've never heard of orb. This is the second similar project I've gotten responses about. I honestly had no idea anything similar even existed. Why are these not more popular? I can see a million different use-cases for apps such as this.
That being said, I tried the orb demo and support on mobile was terrible. I'm aiming to have it be fully touch/mobile supported.
Because the use cases for these are very niche.
Those who simply want access to their files will find Google drive much easier.
Those who need advanced access will use RDP or SSH instead
Google drive isn't self-hosted though, and they charge for any significant amount of storage.
I'm running Ubuntu server, so there is no desktop to access via rdp, and I don't have to open an ssh port to access this. I still get all of my files, while also being able to put it all behind 2fa and grant as much or as little privilege as desired.
Doesn't matter to most people, and for those it does matter to, there's OwnCloud and a ton of other options
Storage costs money, dude, and GDrive don't cost much.
If you are worried about opening SSH to the internet, you should be absolutely fucking terrified of opening a browser based admin portal to the net. SSH is fucking bulletproof compared to any web admin console you can think of.
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...