npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

valheim-admin-ui

v1.0.1

Published

Valheim Game Server Admin Web UI - VAUI

Downloads

2

Readme

Valheim Admin UI

Valheim Game Server Admin Web UI - VAUI

for Windows. Linux/OSX in the future.

Pull requests

"Bugs ... fixes are really wanted"

Any bugs about this project, feel free to report them at the issues tab. And you are welcome to submit pull requests.

Modes for the Admin UI

  • Standalone, just run by NodeJS (and a service)
  • IIS Server, using iisnode

Installation

As standalone installation

  1. download the files from github to a new C:\Server-Games\ValheimAdminUI folder
    • and open a terminal there
    • install the UI main dependencies: npm i
  2. install all requirements
    • best to download NSSM and SteamCMD to a folder, e.g. C:\Server-Games\ValheimAdminUI\tools
  3. configure, see Paths and commands (and that bin folder)
  4. add a user to be able to login, see to create a password hash and save with a user
  5. Install game and service, see Install the game or service
  6. (setup port forwarding / DynamicDNS)
  7. run it with npm start
  8. open the browser, http://localhost:3000/

Notes

Using DynamicDNS and IIS you may not want to use HTTPS.

  • You would remove the <rule name="Redirect to https"... directive.

Config

Passwords: app/config.passwords.json

Paths and commands: app/config.win32.js and others.

UI translation: public/index.html and public/commands.html

Commands

special environment variables

  • PORT - the Valheim Admin UI port to use (defaults to 3000)
  • PASSWORDFILE - the full file path to a different password "*.json" file
  • CONFIGFILE - the full file path to a different "config.*.js" file

Set a env var on commandline, then run the UI (PORT used as an example):

  • Win (cmd): \> set PORT=3000 && npm start
  • Win (PS): PS> $env:PORT=3000 ; npm start
  • MacOS/LX: $ PORT=3000 npm start

Start server with a specific port

to use a specific port for the web ui:
   npm start -- port 3000
   LINUX:  PORT=3000 npm start

Add users / password

to create a password hash:
   npm start -- enc  newpassword
   npm test  newpassword
to create a password hash and save with a user:
   npm start -- enc  newpassword user.name
   npm test  newpassword user.name
delete a user:
   npm start -- enc  NULL user.name
   npm test  NULL user.name

Install the game or service (to start/stop or keep the game running)

install the "service" or "game":
   npm start -- install service
   npm start -- install game
   npm start -- install no-service    // uninstall service

Requirements

  • NodeJS > 14

    • used to run everything
    • install
      • Download: https://nodejs.org/en/download/
      • install using NVM: nvm install 16.0.0
        • NVM for Win: https://github.com/coreybutler/nvm-windows
  • app modules

    • the ui has code dependencies
    • all OSs: npm i
  • full-icu

    • globally installed for nodeJS
    • Install
      • all OSs: npm install full-icu -g
  • NSSM (Windows)

    • user on -- install service
    • used by start / stop / update commands
    • Install
    • Download: https://nssm.cc/download -> You must use the pre-release nssm 2.24-101-g897c7ad!
      • WIN: install using Chocolatey: choco install nssm
  • SteamCMD

    • used on -- install game
    • used by update game commands
    • Install
      • Download: https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD
      • WIN: install using Chocolatey: choco install steamcmd
      • MacOS: brew install --cask steamcmd
      • Linux: apt install steamcmd

OPTIONAL

  • NVM
    • to handle NodeJS installations and to install NodeJS
  • Microsoft IIS
    • to host VSUI using iisnode
  • iisnode
    • https://github.com/Azure/iisnode
  • freedns.afraid.org
    • to have the Web UI available on a self hosted server
  • FileZilla Server
    • alias the most important folders: game-logs, admin-ui-logs, world-file-folder, game folder for admin
    • Example folders related to my configuration:
      • ./iisnode
      • C:\Server-Games\valheimserver\config
      • C:\Server-Games\valheimserver\logs
      • C:\Server-Games\valheimserver\valheim_server_Data
      • C:\Server-Games\valheimserver\logs
      • C:\Users\Valheim Game Server\AppData\LocalLow\IronGate\Valheim

License

The code is available at GitHub under the ISC license.

Attribution

  • bcrypt - MIT License
  • fs-extra - MIT License
  • koa - MIT License
  • koa-bodyparser - MIT License
  • koa-router - MIT License
  • koa-session - MIT License
  • koa-static - MIT License
  • node-vdf - ISC License

Possible future ideas for v.2

  • pack using electron for releases (no NodeJS installation, no npm start -- cmd but vaui --cmd usage)
  • use npm's SteamCMD to download SteamCMD
  • use a setup script
  • add a script to use appcmd.exe to add to IIS / include to download iisnode