WordHunter-V2 is now live on https://wordhunter.niweera.gq
(WordHunter-V1 is live on here)
WordHunter lets you to find the words for the letters you have when you are playing Scrabble.
The following is the basic architecture of the WordHunter application. (The web application will use the WordHunter-API to get the results according to the letters that the user has given.)
User wants to find words which can be created from z, o, o
The WordHunter service will provide the following results.
- zoo - An establishment which maintains a collection of wild animals, typically in a park or gardens, for study, conservation, or display to the public.
- oo - A honeyeater (bird) found in Hawaii, now probably extinct, which had a thin curved bill and climbed about on tree trunks.
(The initial version only gave the words which contains all the letters. This version provides all the letter combinations.)
Nipuna Weerasekara โ @Niweera โ [email protected]
Distributed under the MIT license. See LICENSE
for more information.
https://github.com/Niweera/wordhunter-v2
WordHunter-V2 is a combination of several microservices written in Java Spring Boot. All services are cached with Redis server, load balanced with Ribbon Client and short-circuited with Netflix Hystrix. Inter-service communication is done via FeignClient and WebFlux WebClient.
- GoogleDict - (Dictionary API Service)
- Enygma - (Enygma Service for getting anagrams for a given letter combinations)
- WordHound - (WordHound Service uses WordCache DB for providing definitions to a given word. It uses GoogleDict Service to populate the WordCache DB [A MongoDB instance])
- WordHunter-API - (The main entry-point to the WordHunter application, basically provides the words, and their definitions for a given letter combination)
- Eureka-Server - (Eureka Discovery Server for service discovery)
- WordHunter-UI - (UI for the WordHunter application)
- Fork it (https://github.com/Niweera/wordhunter-v2/fork)
- Create your feature branch (
git checkout -b feature/fooBar
) - Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request
Thanks to Ammoniya for pointing me in the right direction.