Skip to content

Team-VoW/VoicesOfWynn-Website

Repository files navigation

Voices Of Wynn Website

This repository stores code for the public website presenting the community project Voices of Wynn – a mod for Minecraft that allows all players listen to NPC dialogue on the MMORPG server Wynncraft instead of reading it.

For Developerts

Running the website locally

To run the website locally you need to make sure you have your Docker engine with docker-compose running. An easy way of doing this is downloading Rancher Desktop and simply running the application. Once you have that simply run:

docker-compose -f docker-compose.dev.yml up

to force it to build the web container you can add the --build flag:

docker-compose -f docker-compose.dev.yml up --build

after having run it once you do not need to include the --build in future startups which will make starting it faster

this will create all the containers (databases and everything) for you.

Once the containers are running, you can access the following services:

If you have some weird issues or want to reset everything do the command:

docker system prune -a --volumes

after which you will have to run the docker-compose command again with --build.

Liquibase

We use liquibase as a database schema change management tool. It allows you to manage and track database schema changes in a version-controlled manner, making it easier to deploy and maintain database changes across different environments.

To change anything about the database structure you need to create a new changeset and add it at the bottom of the changelog found in the liquibase directory. The changset name should get a title such as: -- changeset <name>:<yourChangesetNum> so if your name is kmaxi and this is the first change YOU are making it should look like this: -- changeset kmaxi:1.

For more information on how to use Liquibase, refer to the official documentation.

Storage Configuration

The application supports two storage backends for dynamic files (recordings, avatars, etc.):

Local Storage (Default)

Files are stored in the ./dynamic/ directory on the server filesystem.

Configuration:

STORAGE_TYPE=local

This is the recommended option for local development.

Azure Blob Storage

Files are stored in Azure Blob Storage, which is recommended for production deployments.

Setup Instructions:

  1. Create an Azure Storage Account at https://portal.azure.com
  2. Create a container named "vow" with "Blob" public access level
  3. Get your connection string from: Storage Account > Access Keys > Connection String
  4. In your .env file, set:
    STORAGE_TYPE=azure
    AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...;AccountKey=...;EndpointSuffix=core.windows.net
  5. Comment out the dynamic_data volume mount in docker-compose.yml
  6. Restart containers:
    docker-compose -f docker-compose.dev.yml restart web

Note: For local development, use STORAGE_TYPE=local. For production, use STORAGE_TYPE=azure.

Planned featuers

🔲 Index page with basic information about the project
🔲 Downloads page with clear download links
🔲 Contributors page with list of all contributors and detailed information about their contributions
🔲 Recordings page with all recordings
🔲 Upvote/downvote system for all recordings
🔲 Login system for all contributors, allowing them to change their displayed profile picture, name and other information
🔳 Suggest other features in Issues

About

Public website for the Minecraft mod "Voices of Wynn"

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors