✨ This workspace has been generated by Nx, a Smart, fast and extensible build system. ✨
This project is a re-creation to the classic MMO DarkThrone. This is a side-project, there is no intention to make any profit from it, nor should there be any expectations of it being a complete game.
You need to have the following installed on your machine:
Requirement | Version |
---|---|
Node | >= 20.11.0 |
NPM | >= 10.2.0 |
PostgreSQL | >= 14.0.0 |
Clone the repository
Run npm install
to install the dependencies
Setup your environment file
Copy the .env
file to .env.local
:
cd apps/api && cp .env .env.local && cd -
Optionally replace the defaults to match your local environment
Connect to an already running PostgreSQL database or use cd apps/api/ && docker-compose up -d && cd -
to create a PostgreSQL in a Docker container
You can turn it off using docker-compose down
.
Run the database migrations
npx nx knex api migrate:latest
Start the application
npx nx run-many -t serve -p api,web-app,placeholder-site
This will start the:
This is the main backend for the application. It handles business logic and data storage. This app also handles the processing for time based events such as daily citizens and player turns.
This is the main frontend for the game and the interface that players use. It communicates with the API via a client library, making extensibility amd maintenance easier.
This is a temporary website that welcomes users into the game. It will be replaced with a proper marketing site in the future.