Scrabblista

Iphone
Scrabblista - main viewScrabblista - search query enteredScrabblista - search results sorted by lengthScrabblista - search results sorted by pointsArrow icon

Project

In February 2017, after three months of learning web development from online tutorials and finishing couple of small projects I decided to create my first server app. Instead of going with Facebook/Twitter/Reddit clone, I decided to stand out and create a word finder for Scrabble. Little did I know, that effective search through over 2,700,000 scrabble-viable words (Polish dictionary), could be a complex task. After few failed attemps with optimizing SQL queries I decided to store whole dictionary in a Trie. This choice of data structure along with depth-first search algorithm implementation let me cut down search time to an acceptable value. Besides searching for words, that can be made from a given hand, user is also able to sort the result by word length, or highest score. In the future, if time allows me to get back to this project, I will hopefully make it twice as fast, include English dictionary and add pagination for search results.

Technology stack:

  • Ruby on Rails
  • Ruby
  • JavaScript
Macbook
Scrabblista - main viewScrabblista - search query enteredScrabblista - search resultsArrow icon