Dawnshard (internally named DragaliaAPI) is a server emulator for Dragalia Lost.
You can play using the Dragalipatch app by LukeFZ to redirect server traffic to https://dawnshard.co.uk.
If you haven't already, please also consider joining the Dragalia Lost Reverse Engineering Discord server; this is where development is discussed and where bugs/issues are most easily reported.
Contributions are more than welcome! Feel free to fork the repository and open a pull request with these changes.
For guidance on contributing, including the process for setting up a development environment, please see the GitHub Wiki.
See also the API documentation for reference on what existing endpoints do and how to implement new ones.
The application is deployed as three services: the main ASP.NET service which is stateless, and two stateful services in Redis (session management) and PostgreSQL (savefile storage).
The recommended way to self-host (for personal use or development) is using docker-compose
-- please see the self-hosting guide in the wiki for more information.
If you don't want to use Docker, see the no-docker branch which uses an SQLite DB and an in-memory IDistributedCache for session management. Please note that this version is not regularly updated and no guarantees are made that it functions correctly. It also cannot support co-op as this requires Redis.
On a dedicated server, the basic docker-compose
setup will work, but additional considerations should be made regarding reverse proxying, logging, etc. Speak to the maintainer if you are interested in hosting your own instance for further guidance.
A big thanks to JetBrains for providing open source licenses for this project.