Skip to content

bearbob/cyoa_engine

Repository files navigation


CYOA Engine

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.

Built With

Getting Started

To get an introduction into the data model and how to build your own stories, take a look at the documentation.

Building And Running

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>

Rebuild Database

docker-compose down
docker volume rm cyoa_engine_db
docker-compose up -d

Linter

This project uses ktlint for consistent formatting. You can automatically fix most format errors using:

./gradlew ktlintFormat

Contributing

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!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

Contact

TripleTwenty

About

Engine to run CYOA type of text based RPGs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages