Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ljacqu/wordeval
Processes a language dictionary to find fun words
https://github.com/ljacqu/wordeval
Last synced: 7 days ago
JSON representation
Processes a language dictionary to find fun words
- Host: GitHub
- URL: https://github.com/ljacqu/wordeval
- Owner: ljacqu
- Created: 2015-08-03T20:49:17.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-10-21T19:49:58.000Z (24 days ago)
- Last Synced: 2024-10-22T13:25:23.634Z (23 days ago)
- Language: Java
- Size: 736 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 29
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
_wordeval_
==========
[![Build Status](https://github.com/ljacqu/wordeval/workflows/build/badge.svg)](https://github.com/ljacqu/wordeval/actions?query=workflow%3A%22build%22)
[![Coverage Status](https://coveralls.io/repos/ljacqu/wordeval/badge.svg?branch=master&service=github)](https://coveralls.io/github/ljacqu/wordeval?branch=master)
[![Code Climate](https://codeclimate.com/github/ljacqu/wordeval/badges/gpa.svg)](https://codeclimate.com/github/ljacqu/wordeval)Java application that processes dictionaries of various languages to find "interesting" words based on
various criteria. The results are exported as JSON so they can be displayed by another module (planned).Requirements
------------
- Java 17
- Requires you install the [Lombok plugin](https://projectlombok.org/download.html) for your IDE or you won't see the
accessors and builders it generates
- MavenGeneral setup
-------------
- Indentation with two spaces
- 120 characters as max line width
- JavaDoc on all _public_ membersTechnical layout
----------------
An `Evaluator` processes words and decides (based on its criteria) whether it keeps the words in its results.
A `Dictionary` object takes a list of _evaluators_ as argument. As it loads the words from its file, it passes
it to the list of _evaluators_ it received, allowing them to decide how "interesting" that word is individually.
Once the _dictionary_ has finished, the result of each evaluator is converted to an `ExportObject`; all together
are then exported as JSON.Certain _evaluators_ yield a lot of results; we only keep the most interesting results in the export object
and all others are aggregated, i.e. we only store the number of words found for the remaining entries.The current tests yield a coverage of 80% over the project's code base and can serve as a good entry point to
understand the purpose of a class.