Skip to content
A webapp to find similar board games
Python HTML Makefile JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
static/js
templates
.gitignore
Makefile
README.md
bg_similarity.py
environment.yml
lsh_train.py
requirements.txt
test_bg_similarity.py
utils.py
zappa_settings.json

README.md

Boardgame Similarity Engine

This web app is meant to provide a list of similar board games from an user-input BoardGameGeek ID number using Locality Sensitive Hashing.

The app can be accessed here

Credit

This would not have been possible without data gathering assistance and rubber ducking from @gallamine and @notthatdsw as well as the following main dependencies:

Working with the library

Build the Environment

make init

Gather the Data

This library is built on a data file that contains a pandas dataframe of the top ~6000 board games (as of 2018-06-27). This data file is not included as I don't own that data but it can be built using the boardgamegeekv2 library.

Building the Locality Sensitive Hash Table

Run Local via Flask

make start

Stop or Restart Local

make stop or make restart

Deployment

This system is deployed to AWS's serverless architecture using Zappa. The following commands can be used to interact with the deployment:

Initial deploy

make deploy

Update a previous deployment

make redeploy

Tear down a deployment

make remove

Get Logs

If there is an issue with the system after deployment, the aws logs can be observed using make logs

Tests

There is limited testing at the moment but tests can be run using make test

You can’t perform that action at this time.