ArcaneNexus is a custom game launcher inspired by World of Warcraft. It integrates a client launcher, server management, and a manifest generator, providing a unified platform for an enhanced gaming experience.
- Game Launcher: Built with Electron, offering a user-friendly interface to launch and manage game clients.
- Server: An Express-based server that handles game manifests and client-server interactions.
- Manifest Generator: A tool to scan directories and generate JSON manifests for game files.
- (Coming Soon) Docker Support: Easily deploy and manage the server using Docker Compose.
- Modular Monorepo: Organized with npm workspaces for streamlined dependency management and development.
If you want to see a web version of the app with limited functionality, you can check it out here.
ArcaneNexus/
├── packages/
│ ├── server/
│ │ ├── Dockerfile
│ │ ├── docker-compose.yml
│ │ ├── package.json
│ │ └── src/
│ ├── generator/
│ │ ├── package.json
│ │ └── src/
│ └── launcher/
│ ├── package.json
│ └── src/
├── package.json
├── README.md
└── .gitignore
📦 Prerequisites
- Node.js (v14 or later)
- npm (v7 or later)
- Docker (optional, for server deployment)
- Clone the Repository
git clone https://github.com/EvilGenius13/ArcaneNexus.git
cd ArcaneNexus
- Install Dependencies
Copy code
npm install
This command installs dependencies for all workspaces (server, generator, launcher).
- Server Configuration
- Navigate to the server directory:
cd packages/server
- Create a
.env
file based on.env.example
and configure your environment variables.
- In
/packages/generator
, create a.env
file based on.env.example
and configure your environment variables. - Cd into
/packages/generator
and runnode generateManifest.js
to generate the manifest. - Cd back to root folder then run
npm run build:laucher
. - Run
npm run start
in root to start the server. - Open application generated in
packages/launcher/dist
and enjoy!