Skip to content
/ odyssey Public

A social media game that allows users to accumulate points and badges by creating and solving quests as they travel around the world.

License

Notifications You must be signed in to change notification settings

dkbnz/odyssey

Repository files navigation

Odyssey Logo

Test_badge Build_badge

About

Odyssey is a web app built on a three tier architecture. The app is a social media game that allows users to accumulate points and badges by creating and solving quests as they travel around the world.

The Team

The developers of Odyssey are a group of 8 students, dubbed Everyware, from the University of Canterbury's SENG302 class of 2019. We wanted to create an application that the university could use for events such as open days. This application was developed over the course of eight months of university work, so we hope you enjoy it!

  • Cam Arnold
  • Doug Barrett
  • Vinnie Jamieson
  • Matthew Kenny
  • Hayden Morriss
  • Matilda Porterfield
  • Joel Ridden
  • Isaac Worsley

See the User Manual for instructions to run the application.

Dependencies

Everyware's Odyssey requires the following dependencies to run. It has been tested to run on both Windows 10 and Linux Mint.

Build instructions (Windows/Linux)

git clone https://github.com/dkbarrett/odyssey.git && cd odyssey # Clone this repository
sbt dist # Build the application

The resulting zip file should now be in ./target/universal

It may be extracted to your preferred install location.

Run instructions

Environment variables

Connection to the database is specified via environment variables. The application is configured to use MySQL for the database with the following variables.

  • DB_HOST - Database hostname e.g. mysqldb.odyssey.com
  • DB_NAME - Name of the database holding the odyssey data e.g. odyssey-production
  • DB_USERNAME - Username with appropriate privileges to access the odyssey database.
  • DB_PASSWORD - Password for the aforementioned user.

Docker

After building using sbt dist you may create a docker container of the application using docker build . -t odyssey. The resulting container may be run using:

docker run \
    -p 9000:9000 \
    -e DB_HOST=example.com \
    -e DB_NAME=odyssey_data \
    -e DB_USERNAME=odyssey_db_user \
    -e DB_PASSWORD=odyssey_db_pass \
    -v user_photos:/opt/odyssey/data/photos \
    odyssey

Windows

  1. Navigate into the newly extracted ${INSTALL_LOCATION}/bin folder
  2. Execute the odyssey-X.X.bat file

Linux

  1. Navigate into the newly extracted ${INSTALL_LOCATION}/bin folder
  2. Open the folder in the terminal and type chmod +x ./odyssey-X.X. This enables the file to be executable.
  3. Execute ./odyssey-X.X.

The application will now be accessible at http://127.0.0.1:9000/

To login as an admin user use username admin@travelea.com and password 1nimda.
To login as a regular user use username guestUser@travelea.com and password guest123.

User Manual

Click here for a comprehensive guide to using Odyssey.

Reference

Licencing

All external licences can be found in the /doc directory in the repo or on our Wiki.

About

A social media game that allows users to accumulate points and badges by creating and solving quests as they travel around the world.

Resources

License

Stars

Watchers

Forks

Packages

No packages published