this post was submitted on 09 Dec 2023
165 points (95.6% liked)

Selfhosted

40383 readers
495 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

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.

you are viewing a single comment's thread
view the rest of the comments
[–] ikidd@lemmy.world 4 points 11 months ago (1 children)

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.

[–] mhredox@lemmy.world 2 points 11 months ago* (last edited 11 months ago)

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.