Creating a Webinterface

Hey guys im very new to programming at all but as i love to work with my pc and make servers in minecraft and other games and have so much stuff planned in future im really thinking over where to start

i know its a big idea to start off with learning to programm a webinterface for gamesservers and etc but that keeps me motivated so yeah haha

so to start: i used some webinterfaces and there where all installable the last one i used was with node.js files in some way (installed it with npm)

so basicly i wanna ask how does that work that people code a website that is installable and configurable on start / first start or so…

and which programming language should i use i watched so much videos (most of them from mosh but much more too, all about all that programming languages)
i was thinking about node.js (or express) because its able to handle much i/o and so

basicly my idea is a webinterface where i login, create new users (with permissions), can see and use the console of minecraft, can start, stop, reload servers with buttons (a input field where i type startcommand by myself and safe it in there to make it editable all the time), it should have a filesystemintegration with drag and drop, config and textfiles (of minecraft should be editable as well), it should definitly have live overview of ram and cpu usage (maybe even disk) for all minecraft servers together and every single server as well

the basic files of the minecraft servers just get a path folder which can be chosen example /home/minecraft

and in there are all the folders that contain the minecraft server files like this
/home/minecraft/lobbyserver
/home/minecraft/bungeecord
/home/minecraft/freebuild
/home/minecraft/city
/home/minecraft/farming

and every of these folders contains 1 servers

i mean im not a programmer but i think with this idea it should not be so hard to make it

because the webinterface just gets a configurable path with preconfigured path´ s for this given directory and takes everything from it like the folder names for the buttons to navigate through the servers inside the webinterface, so i can add a server by just adding a directory with the server.jar inside the path (/home/minecraft/servernameexample) and it just adds this foldername to the webinterface serverlist, another function i wanna have insight the webinterface it to be able to upload a folder through webinterface (like a button to create a new server where it gives me the option to upload a full server folder, and a function to duplicate servers or/and create templates )

i hope you all understand what my goal is and my it is hard but i just need help to choose my programming language or techstack? i dont really know what to use etc…

just give me maybe a bit info on this like:

you need languagexy because of this …
you need language89 because of this …

you can use x or z but i prefer x in this project because of xyz but its harder …

i hope i get a good help from u guys <3

1 Like

Hey @callmeBartis, Welcome to the forums.

This sounds like a really cool project. I’m thinking of bringing back my Minecraft cluster servers(Bungee with creative, survival, etc…).

Have you looked into https://pterodactyl.io/? Its an opensource project for managing docker servers via a react front end.

If you want to do it from scratch you should learn:

Front End

  1. HTML/CSS
  2. JavaScript with a front end like react

Back End

  1. Either JavaScript with node.js, Golang, PHP, Python, Java(Could be helpful for writing plugins for Minecraft too)
  2. Bash for controlling the Linux os
  3. Database for storing client info
  4. Docker/Kubernetes
  5. Networking, CRON

Git for version control.

Be forewarned that this is a big undertaking so don’t be discouraged if its taking longer then you anticipated.

Hope this helps. If you decide to do it from scratch then let me know and I can spare some time to help.