[About project] | [Docker image] | [Docker installation]
JWizard is an open-source Discord music bot handling audio content from various multimedia sources with innovative web player. This repository contains web interface to simplify configuration, updates and management of JWizard infrastructure.
| Name | Description |
|---|---|
| jwm-client | React application (SPA). |
| jwm-server | Javalin (with embed Jetty server). |
- Make sure you have at least JDK 21 and Kotlin 2.2.
- Clone JWizard Lib and JWizard Tools from organization repository via:
$ git clone https://github.com/jwizard-bot/jwizard-lib
$ git clone https://github.com/jwizard-bot/jwizard-tools- Configure and run all necessary containers defined in
README.mdfile in this repository. You must have up these containers:
| Name | Port(s) | Description |
|---|---|---|
| jwizard-vault | 8761 | Secret keys storage service. |
| jwizard-mysql-db | 8762 | MySQL database. |
| jwizard-rabbitmq | 8771, 8772 | RabbitMQ server and management panel. |
Important
Don't forget to perform database migration after start DB (see jwizard-lib repository).
- Build library and package to Maven Local artifacts' storage:
$ ./gradlew clean publishToMavenLocal- Clone this repository via:
$ git clone https://github.com/jwizard-bot/jwizard-management- Create
.envfile in root of the project path (based onexample.env) and insert Vault token:
JWIZARD_VAULT_TOKEN=<vault token>where <value token> property is the Vault token stored in configured .env file
in jwizard-lib repository.
- That's it. Now you can run server via Intellij IDEA. Make sure, you have set JVM parameters (for server app):
-Druntime.profiles=dev -Denv.enabled=true -Xms128m -Xmx128m
where Xmx and Xms parameters are optional and can be modified.
Note
For servers running on HotSpot JVM, Oracle recommended same Xms and Xmx parameter, ex. -Xms128m
and -Xmx128m. More information you will find
here.
- To run client development server, install packages via:
$ cd jwm-client
$ yarn install --frozen-lockfileTip
If you do not have yarn, install via: npm i -g yarn.
and run it via:
$ yarn run devClient development server should be available at 8773
We welcome contributions from the community! Please read our CONTRIBUTING file for guidelines on how to get involved.
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.
