Jump to content

I've been working on an API and a MacOS app


Recommended Posts

Hey folks,

 

I'm a very fresh UNRAID user and in fact I am still in my trial period, but thought I'd share something I'm working on in case it is of any interest to anyone else. I like to dabble with things and make apps just to see if I can, and as a result I've ended up spending the last week developing an API and a native MacOS app for UNRAID. 

 

Firstly, the API can fetch:

  • CPU model, temps & util
  • Memory & memory util
  • Pool size, used and total
  • Cache size, used and total
  • VM name, memory, status, CPUs, and HDD allocation
  • Container name, status, image, ports, mounts, webui, and logo

 

The API can also issue commands to VMs and Containers:

  • VM
    • Start
    • Pause
    • Resume
    • Shutdown
    • Force Shutdown
    • Restart
  • Container
    • Stop
    • Start
    • Restart
    • Pause
    • Resume

 

The API just runs in a docker container and uses HTML GET/POST commands - e.g. http://192.168.5.32:5000/api/system will return all the system info in a JSON format.

 

 

Now for the app, currently it only works on MacOS, but no reason I couldn't adopt it for iOS and iPAD, currently it is very much a WIP, but I've started using it myself, so it does work.

 

The app shows:

  • Basic details like name, CPU, and RAM
  • CPU Util & Temp
  • RAM Util
  • Pool usage
  • Cache usage
  • All VMs and their states
  • All containers and their states

 

You can:

  • Add multiple servers
  • Customise the VM logo
  • VNC directly into the VM by double clicking on it (if you set a hostname), this will open the MacOS Screen Sharing app
  • Issue commands to the VMs
  • Issue commands to containers
  • Double click on the container to open the WebUI (if any)

 

 

Currently I'm just making all this for myself, but is there anyone else out there that is interested in either of these projects? Are there any other features you'd like to see?

 

Screenshots:

 

Screenshot2024-06-23at11_57_52AM.thumb.png.dc5aa030a8dde10bf02d8cc27c1b1776.png

Screenshot2024-06-23at11_58_08AM.thumb.png.49963223d4aa4c913f1c6fc540ced1d4.pngScreenshot2024-06-23at11_58_22AM.thumb.png.312d7ffbc33be23da1915a3fc429b6ae.pngScreenshot2024-06-23at11_58_36AM.thumb.png.0fb7fa25833487b67ed62f6767426153.pngScreenshot2024-06-23at11_58_51AM.thumb.png.67d52313eb0dc1706935e16252eac998.png

 

 

Link to comment

I did see ControlR, but noticed that it was a iPhone + iPad app. Whereas I wanted a desktop app. 
 

The Mac app I’ve made is primarily for my use. As I’m not sure how much demand there would be for a desktop app when you can just use the web portal. I’m a bit of a fringe case I think in that I’d prefer to use a native app over a web portal. 
 

However with this API it can be integrated into absolutely any kind of app or interface. I did look at a couple of existing APIs that already exist but they didn’t offer everything I wanted a readout on, or control over. 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...