scrabble-solver v2.15.7
scrabble-solver
Table of contents
Dictionaries
Language | Word list | Word definitions | Highest-scoring word |
---|---|---|---|
🇬🇧 English | 💾 SOWPODS | Merriam-Webster | oxyphenbutazone (1458) |
🇺🇸 English | 💾 TWL06 | Merriam-Webster | oxyphenbutazone (1458) |
🇫🇷 French | 💾 ODS8 | CNRTL | schizothymiques (1566) |
🇩🇪 German | 💾 hippler/german-wordlist | DWDS | polytoxikomanem (1512) |
🇮🇷 Persian | 💾 MansourM/persian-to-persian-dictionary | واژه یاب | (756) اگزیستانسیالیست |
🇵🇱 Polish | 💾 SJP.PL | SJP.PL | współposiądźmyż (1512) |
🇷🇴 Romanian | 💾 LOC 5 | dexonline | luxemburghezele (1944) |
🇪🇸 Spanish | 💾 FILE 2017 | Diccionarios.com | flexibilizabais (1323) |
🇹🇷 Turkish | 💾 Turkish | Türk Dil Kurumu Sözlükleri | dövüşmeyeceğime (1593) |
Run
You can run Scrabble Solver on your machine - all you need is Node.js 20 or later.
npx scrabble-solver@latest
Give it a while to install and download dictionaries. When it's done it will automatically open http://localhost:3333/ in your browser.
Hit Ctrl + C in your terminal to exit the app and shut down the server.
Uninstall
Dictionaries and logs are stored in $HOME/.scrabble-solver
.
$HOME
location is acquired using os.homedir()
.
rm -rf $HOME/.scrabble-solver
Develop
These steps are required only if you want to make changes to the source code.
Setup
One-time project setup.
git clone https://github.com/kamilmielnik/scrabble-solver.git
cd scrabble-solver
npm install
npm run build
Run app dev server
The following command will serve the app at http://localhost:3000/.
npm run dev
Note: hot code reload works only for the scrabble-solver
package. If you make changes to any other package, you will need to rebuild it (see below).
Rebuild the entire project
npm run build
Rebuild a single package
For convenience, here's a list of commands to rebuild every package individually.
npm run build -w @scrabble-solver/configs
npm run build -w @scrabble-solver/constants
npm run build -w @scrabble-solver/dictionaries
npm run build -w @scrabble-solver/logger
npm run build -w @scrabble-solver/scrabble-solver
npm run build -w @scrabble-solver/solver
npm run build -w @scrabble-solver/types
npm run build -w @scrabble-solver/word-definitions
npm run build -w @scrabble-solver/word-lists
Add a new language
- Find and download a flag representing the locale in an SVG format
- I usually find them at https://commons.wikimedia.org/
- Rename the file to
FlagXX.svg
and put it in packages/scrabble-solver/src/icons - Export the SVG file in packages/scrabble-solver/src/icons/index.ts
- Add IETF language tag for the new locale in packages/types/src/Locale.ts
- Rebuild the types package
npm run build -w @scrabble-solver/types
- Add locale configuration in packages/scrabble-solver/src/i18n/constants.ts
- Update locale-detecting code in packages/scrabble-solver/src/lib/detectLocale.ts
- Add game configs for the new locale in packages/configs/src/languages
- Add an export for these locale configs in packages/configs/src/languages/index.ts
- Add a translation file in packages/scrabble-solver/src/i18n/languages and fill it with translations
- Copy any existing file, e.g.
english.json
and modify it
- Copy any existing file, e.g.
- Add an entry for the translations in packages/scrabble-solver/src/i18n/i18n.ts
- Add a function to fetch the list of words in the new locale in packages/word-lists/src/getWordList.ts
- Add a function to fetch the word definition in the new locale in packages/word-definitions/src/crawl.ts
- Add a function to parse the word definition crawled in the previous step in packages/word-definitions/src/parse.ts
- Bonus points for adding tests in packages/word-definitions/src/parse.test.ts
Tech stack
- TypeScript
- Node.js
- Next.js
- Express
- Workbox
- React
- Redux
- Redux Toolkit
- Redux-Saga
- SCSS
- CSS Modules
- include-media
- Lerna
- Cypress
- Jest
- ESLint
- Prettier
Related projects
Lexatious
The user interface and source code for the web front end of Lexatious is based on Scrabble Solver.
Media
6 months ago
4 months ago
7 months ago
7 months ago
7 months ago
7 months ago
8 months ago
10 months ago
11 months ago
11 months ago
11 months ago
9 months ago
9 months ago
11 months ago
11 months ago
12 months ago
11 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago