This service provides a REST API for Choose Your Own Adventure-style games. Users can read and play the story by using individually created page keys, that render the content.
To get an introduction into the data model and how to build your own stories, take a look at the documentation.
Requires JDK17 to be installed.
docker-compose up -d
./gradlew bootRun
Open localhost:8080/api/v1/page/read
to start the game.
Each navigation option will return a key, that you can use to navigate to the next page.
http://localhost:8080/api/v1/page/read?page=<KEY>
docker-compose down
docker volume rm cyoa_engine_db
docker-compose up -d
This project uses ktlint for consistent formatting. You can automatically fix most format errors using:
./gradlew ktlintFormat
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This work is licensed under a Creative Commons Attribution 4.0 International License.
TripleTwenty
- Twitter @tripletwenty_
- Mastodon @tripletwenty@det.social
- Website tripletwenty.net