HostRN is a fun little side project where instead of having to manually start and stop services on your terminal, you can now do it all from a web interface.
HostRN doesn't use docker. Because... I don't know. Some of my projects that I have in my self-hosted server has some cool stuff I don't want to keep opening my terminal up. So, that's why I made this!
Probably. I don't really care that much because this project is mainly for me to learn Rust as the backend.
It's not. Probably. We give you less features because, well, fuck off with a bunch of features. I just want a simple save, start, stop, delete, and list services.
- Backend: Rust
- I wanted a lightweight and stable backend because RAM nowadays is expensive and there's no other DDR4 16gb of ram. Also I just wanted to learn Rust as a excuse.
- Frontend: Svelte
- Recently switched from SolidJS to Svelte. Why? Well, I couldn't escape the Svelte hole and loved Svelte (because I use it everywhere in my personal projects).
- Ensure you have both
cargoandpnpminstalled on your system. You can install cargo from here and pnpm from here. - Clone the repository, and run
pnpm installto install all the dependencies. - Once done, run
pnpm run startto run both servers at once! The power of workspaces! And also, Rust and Svelte. - Then, just visit
http://localhost:3000to see the web interface. You can also view it from another device in the same network or zero-trust VPN!- PLEASE AND PLEASE create a
.envfile in @frontend withPUBLIC_SERVER_IPset to your server's IP address.
- PLEASE AND PLEASE create a
In the root folder, just run git fetch && git pull to update HostRN. If there was a new dependency added, in the frontend, run cd frontend && pnpm install to install it. For the backend, run cd backend && cargo install to update it. Then just cd .. and pnpm run start to restart the app.
HostRN is licensed under the MIT License. See the LICENSE file for more information.