Giter Club home page Giter Club logo

airline's Introduction

An opensource airline game.

Live at https://www.airline-club.com/

Version 2 alpha at https://v2.airline-club.com

Screenshot 1 Screenshot 2 Screenshot 3

Setup

  1. install git :D of course
  2. clone this repo ;D , to setup for V2 use git checkout v2
  3. Install at least java development kit 8+
  4. The 2 main projects are : airline-web (all the front-end stuff) and airline-data (the backend simulation).(Optional) If you want to import them to Scala IDE (if you want to code), goto the folder of those and run activator eclipse to generate the eclipse project files and then import those projects into your IDE
  5. This runs on mysql db (install veresion 5.x, i heard newest version 8.x? might not work). install Mysql server and then create database airline_v2, create a user sa, for password you might use admin or change it to something else. Make sure you change the corresponding password logic in the code to match that (https://github.com/patsonluk/airline/blob/master/airline-data/src/main/scala/com/patson/data/Constants.scala#L99)
  6. airline-web has dependency on airline-data, hence navigate to airline-data and run activator publishLocal. If you see encoding error, add character_set_server=utf8mb4 to your /etc/my.cnf and restart mysql. it's a unicode characters issue, see https://stackoverflow.com/questions/10957238/incorrect-string-value-when-trying-to-insert-utf-8-into-mysql-via-jdbc
  7. You would need to initialize the DB and data on first run. In airline-data, run activator run, then choose the one that runs MainInit. It will take awhile to init everything.
  8. Set google.mapKey in application.conf with ur google map API key value. This might not necessary if you run on local host (?) , but if you want to host a public one, your probably need to apply one from google and enable the map API. Be careful with setting budget and limit, google gives some free credit but it CAN go over and you might get charged!
  9. (Optional) For the "Flight search" function to work, install elastic search 7.x, see https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html . For windows, I recommand downloading the zip archive and just unzip it - the MSI installer did not work on my PC
  10. (Optional) For airport image search and email service for user pw reset - refer to https://github.com/patsonluk/airline/blob/master/airline-web/README
  11. Now run the background simulation by staying in airline-data, run activator run, select option MainSimulation. It should now run the backgroun simulation
  12. Open another terminal, navigate to airline-web, run the web server by activator run
  13. The application should be accessible at localhost:9000

Banners

Self notes, too much trouble for other people to set it up right now. Just do NOT enable the banner. (disabled by default, to enable change bannerEnabled in application.conf

For the banners to work properly, need to setup google photo API. Download the oauth json and put it under airline-web/conf. Then run the app, the log should show an oauth url, use it, then it should generate a token under airline-web/google-tokens. Now for server deployment, copy the oauth json google-oauth-credentials.json to conf AND the google-tokens (as folder) to the root of airline-web.

Attribution

Some icons by Yusuke Kamiyamane. Licensed under a Creative Commons Attribution 3.0 License

airline's People

Contributors

patsonluk avatar daprof1 avatar germanwings avatar henderb avatar tjmoores avatar bohaska avatar edoebzd avatar frankpigeon avatar kiike avatar maeyanie avatar grebfar avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.