- Node.js LTS installed
- (optional) MySQL or PostgreSQL database
- Windows, Linux or MacOS host
- Clone the repository or download the files from the
mainbranch - Run
npm install - Copy
.env.exampleto.envand fill out all necessary information in the.envfile. - Run
npm start
- Run
chmod -R 777 tracks - Run
chmod -R 777 userdata - Run
cp docker-compose.yml.example docker-compose.yml - Edit
docker-compose.yml - Run
docker compose up -d
See documentation for more info!
Minicontrol migrate tool uses in-memory sqlite database to process the MySQL data. This means not all MySQL features works, its adviced to remove transactions and creating indexes from the .sql dumpfile. With your favourite text editor, remove these lines, if exists:
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
-- keep everything between
-- and remove ending COMMIT:
COMMIT;
You also need to remove all ALTER TABLE instructions from the .sql dump
Example:
-- remove ALTER TABLE until semicolon ;
ALTER TABLE `rs_times`
ADD PRIMARY KEY (`ID`),
ADD KEY `playerID` (`playerID`,`challengeID`),
ADD KEY `challengeID` (`challengeID`),
ADD KEY `score` (`score`);- Export your XAseco database with
mysqldump -u root -p databasename > xaseco.sql - Move
xaseco.sqlto the main folder of MINIcontrol - Run in MINIControl folder:
tsx --env-file=.env xaseco.ts xaseco.sql - Start MINIcontrol
- Export your PyPlanet database with
mysqldump -u root -p databasename > pyplanet.sql - Move
pyplanet.sqlto the main folder of MINIcontrol - Run in MINIControl folder:
tsx --env-file=.env pyplanet.ts pyplanet.sql - Start MINIcontrol
- Start trakman from docker
- Run in MINIControl folder:
tsx --env-file=.env trakman.ts - Start MINIcontrol
See the documentation in documentation/devs to read more about the core concept of MINIcontrol and how plugins work.
If you want to contribute changes or plugins to MINIcontrol, please open up an Issue first before you start working on things, so we can discuss the details of implementation, etc.
We will not respond to random pull requests.
- Build a local docker image:
docker build -t minicontrol:test -f docker/Dockerfile .