_To Run Locally:_ Clone the repository and perform the following command line actions: ```bash $ cd game $ npm install $ npm run start ``` _To build/run docker container:_ ```bash $ docker build -t game . $ docker run -d -p 3000:3000 game ``` open http://localhost:3000 in browser. _To create a version in a different language:_ - Update the title, the description, and the "You need to enable JavaScript" message in `public/index.html` - Update the language attribute in the HTML tag in `public/index.html` - Update the name and short name in `public/manifest.json` - Update the strings in `src/constants/strings.ts` - Add all of the five letter words in the language to `src/constants/validGuesses.ts`, replacing the English words - Add a list of goal words in the language to `src/constants/wordlist.ts`, replacing the English words - Update the "About" modal in `src/components/modals/AboutModel.tsx` - Update the "Info" modal in `src/components/modals/InfoModal.tsx` - If the language has letters that are not present in English, add them to the `CharValue` type in `src/lib/statuses.ts` and update the keyboard in `src/lib/components/keyboard/Keyboard.tsx` - If the language's letters are made of multiple unicode characters, use a grapheme splitter at various points throughout the app or normalize the input so that all of the letters are made of a single character - If the language is written right-to-left, add `dir="rtl"` to the HTML tag in `public/index.html` and prepend `\u202E` (the unicode right-to-left override character) to the return statement of the inner function in `generateEmojiGrid` in `src/lib/share.ts`