Files
Vocaluxe/HowToBuildWin.md
T
McSchneidarandFlorian Ostertag 336d08040e New Webserver and WebApp (#942)
* Replace the WCF webserver with an ASP.NET Core webserver (VocaluxeWeb)

- New project VocaluxeWeb: ASP.NET Core 2.3 (Kestrel) on .NET Framework 4.8.1, HTTP or HTTPS
  with a self-signed certificate, REST API (/api/v1) with Swagger, live events (Server-Sent Events)
- Access to the game only through IVocaluxeRemote; requests run on the main thread once per frame
- Sessions with roles (guest, player, admin) and configurable permissions, PINs hashed with PBKDF2
- Queue as a playlist with requesters and singers, fair order (one song per person and round)
- Admin: settings, server status, logged-in devices, activate/deactivate and delete profiles
- Profile pictures: own photo or one of the Vocaluxe avatars
- Game: WebApp queue screen (song options, playlist group) to start the next song with the chosen
  singers, return to it after singing, warning when the webserver is off, remote keyboard
- Old WCF server, WebserverInitalConfig and URL reservations removed; libraries moved to libs/managed
- Unit tests for PIN hashing, settings and permissions, queue order and device names
- AppVeyor: Visual Studio 2022 image and Node.js 24 (the build compiles the WebApp)
- Documentation in VocaluxeWeb/README.md

* New WebApp (Vue 3, TypeScript, Vite) replacing the old jQuery Mobile website

- Login with profile and PIN, create profiles
- Songs with search, filters, sorting and 30 second previews
- Queue: add songs with game mode, audio and singers, edit, reorder, start in the game
- Playlists: create, edit, add to the queue
- Now playing with live updates, remote control and keyboard
- Players: own profile with picture (photo or Vocaluxe avatar), roles for admins
- Admin settings: permissions, server status, devices, profiles
- Help page, responsive layout for phones, tablets and desktops, light and dark mode
- Texts in WebApp/src/locales/en.json, translated with Transifex
- Old website and PhoneGap config removed

---------

Co-authored-by: Florian Ostertag <flokuep@users.noreply.github.com>
2026-10-26 05:40:11 +01:00

2.8 KiB

Build Vocaluxe - HowTo (Windows)

  • Navigate to the right repository: usually Vocaluxe Main

  • Navigate to the right branch: usually develop (The main branch of Vocaluxe)

    branch

  • Copy the URL of the corresponding git file

    url

  • Make sure Visual Studio 2012/2013(?) is installed

  • Make sure Node.js (LTS) is installed. It is needed to build the WebApp (folder WebApp), which is built automatically together with the project VocaluxeWeb. Restart Visual Studio after installing it.

  • Clone the repository and open it

    Method A: Use Visual Studio (2013+)'s git client:

    • Start Visual Studio
    • VIEW->Team Explorer
    • Click on the Connect to a Team Project button inside the Team Explorer
    • Click on Clone under Local Git Repositories
    • Enter [theCopiedGitUrl] in the first field
    • Enter a target folder in the second field
    • Click clone vsclone

Method B: Use commandline git client: * Make sure git is installed git-scm * Open a git bash (there should be a link in the start menu) or a normal commandline if you have added git to the PATH variable * Navigate to the folder where git should create the Vocaluxe project folder

  ```
  cd [PathToYourFolder]
  ```
* Clone the repository (could take some time...) 
  ```
  git clone [theCopiedGitUrl]
  ```
  ![clone](https://cloud.githubusercontent.com/assets/5115160/4995707/bc5aa6da-69c2-11e4-95cb-71ac7b0c3fc8.png)

* Now you should find a Folder `Vocaluxe` in the given directory -> navigate into it

* Open the file `Vocaluxe.sln` with Visual Studio
  • Configure the build target to ReleaseWin and x86 or x64 (if unsure -> select x86)

  • Build the projects by clicking "Build"->"Build solution" or just press Control+Shift+B

    build

  • Check if your build was successful buildsuccess

  • YOUR build should have appeared here:

    [PathToYourFolder]\Vocaluxe\Output
    
  • Run Vocaluxe.exe or copy the whole folder to a location of your choice

  • Have fun!