Giter Club home page Giter Club logo

quoridor_online's Introduction

Quoridor Online

As a FYI to somebody browsing my github: this was an academic project done with three other students. Some of the code is not my own, and there was an enormous time pressure on the project.

For personal use only, all rights reserved.

Notes:

  • All source files are located in the src directory
  • Resources includes external licensed assets
  • As is, the project is designed to run as a local instance, accessed by localhost
  • The adjustments made on cs-devel have not been pushed to this repository, since the changes are specific to the hosting situation

To bring online:

docker-compose up

if you don't want to see the logs after you start it up you can run this instead

docker-compose up -d

To take it offline:

docker-compose down

API:

To run tests

docker exec -it api bash
python test_engine_unittest.py

rerun.sh

This clever little script, definitely not hodge-podged from StackOverflow, will restart the API server ever time a file in the directory is touched with a five second delay.
Just long enough to make a quick adjustment!

http_server.py

handles all the http requests on the api side, handling newgame requests, piece and wall movements, and player queue

game_engine.py

handles a few in-between functions for making games

game_classes.py

holds the main body of the api:

all the classes (tile, game, and player) with appropriate methods as well as all currently active games

Web:

Django APP is located in /src/client/quoridor_site/quoridor_site_backend/ Django site is located in /src/client/quoridor_site/quoridor_site/

NPM environmnet is located in /src/client/quoridor_site/

  • The default package manager is yarn, which can be invoked in this directory
  • ./package.json is the package.json file for the project
  • The JS files used for this project are located in ./quoridor_site_backend/static/

The primary js file which handles the game rendering is called game_canvas.js

The file which handles the queueing mechanism on the user side is located in queue.js.

Note: there may be several files in our project which have since been depricated.

quoridor_online's People

Contributors

changetheworld15 avatar lelandsumner avatar morgenman avatar

Watchers

 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.