JWizard is an open-source Discord music bot handling audio content from various multimedia sources with innovative web player. This repository contains monorepo with landing page and dashboard front-end applications with shared configuration and components library.
Landing page:
[Docker image]
| [Docker installation]
Dashboard:
[Docker image]
| [Docker installation]
Name | Description |
---|---|
apps/dashboard | React SPA application for managing guilds. |
apps/landing-page | Next.js SSR application for root JWizard page. |
i18n-translations | I18n translations content shared between apps. |
packages/assets | Static resources (images, fonts) shared between apps. |
packages/eslint-config | Eslint configurations shared between apps and packages. |
packages/lib | Typescript shared library (excluding React stuff). |
packages/prettier-config | Prettier configuration shared between apps and packages. |
packages/tailwind-config | Tailwind configuration shared between apps. |
packages/typescript-config | Typescript TSC config shared between apps and packages. |
packages/ui | React library including widgets, components and hooks shared between apps. |
- Make sure you have at least JDK 17, Kotlin 2.0 and Node v20.
- Go to jwizard-lib, configure and run all necessary
containers defined in
README.md
file 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. |
- Prepare and run JWizard API and Core projects. For more details, please visit this readme files:
- Clone this repository via:
$ git clone https://github.com/jwizard-bot/jwizard-web
- Install all monorepo dependencies via:
$ yarn install --frozen-lockfile
NOTE: If you don't have yarn yet, install via:
npm i -g yarn
.
- To run selected app from monorepo, type:
$ yarn run <project>:dev
where <project>
is landing-page
or dashboard
(see table above).
By default, applications will be listening at:
Name | Port | Link |
---|---|---|
landing-page | 8763 | localhost:8763 |
dashboard | 8764 | localhost:8764 |
NOTE: Alternatively you can run selected project via prepared Webstorm run configuration.
This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.