├── README.md
├── src
├── 0.jpg
├── 1.jpg
├── 2.jpg
├── 3.jpg
├── 4.jpg
├── 5.jpg
├── 6.jpg
├── setUpTests.js
├── index.css
├── index.js
├── App.test.js
├── App.js
├── App.css
├── Hangman.css
├── Hangman.js
├── registerServiceWorker.js
└── words.js
├── public
├── favicon.ico
├── manifest.json
└── index.html
└── package.json
/README.md:
--------------------------------------------------------------------------------
1 | # hangmangame
2 | HangMan during colt steele react projects
3 |
--------------------------------------------------------------------------------
/src/0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/0.jpg
--------------------------------------------------------------------------------
/src/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/1.jpg
--------------------------------------------------------------------------------
/src/2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/2.jpg
--------------------------------------------------------------------------------
/src/3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/3.jpg
--------------------------------------------------------------------------------
/src/4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/4.jpg
--------------------------------------------------------------------------------
/src/5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/5.jpg
--------------------------------------------------------------------------------
/src/6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/src/6.jpg
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/NimeshJohari02/hangmangame/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/src/setUpTests.js:
--------------------------------------------------------------------------------
1 | import { configure } from "enzyme";
2 | import Adapter from "enzyme-adapter-react-16";
3 |
4 | configure({ adapter: new Adapter() });
5 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | @import url("https://fonts.googleapis.com/css?family=Coming+Soon");
2 |
3 | body {
4 | margin: 0;
5 | padding: 0;
6 | font-family: "Coming Soon", cursive;
7 | }
8 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import './index.css';
4 | import App from './App';
5 | import registerServiceWorker from './registerServiceWorker';
6 |
7 | ReactDOM.render(, document.getElementById('root'));
8 | registerServiceWorker();
9 |
--------------------------------------------------------------------------------
/src/App.test.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import App from './App';
4 |
5 | it('renders without crashing', () => {
6 | const div = document.createElement('div');
7 | ReactDOM.render(, div);
8 | ReactDOM.unmountComponentAtNode(div);
9 | });
10 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from "react";
2 | import "./App.css";
3 | import Hangman from "./Hangman";
4 |
5 | class App extends Component {
6 | render() {
7 | return (
8 |
9 |
10 |
11 | );
12 | }
13 | }
14 |
15 | export default App;
16 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | text-align: center;
3 | height: 100vh;
4 | display: flex;
5 | align-items: center;
6 | justify-content: center;
7 | background: url("https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/intermediary/f/61f7685f-47e5-49a0-b5cb-ca6b8cab4228/drok89-a7a2a550-ba87-40a6-9701-b635550d55b3.jpg");
8 | background-position: center center;
9 | }
10 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | }
10 | ],
11 | "start_url": "./index.html",
12 | "display": "standalone",
13 | "theme_color": "#000000",
14 | "background_color": "#ffffff"
15 | }
16 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hangman",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "react": "^16.11",
7 | "react-dom": "^16.4.1",
8 | "react-scripts": "1.1.4"
9 | },
10 | "scripts": {
11 | "start": "react-scripts start",
12 | "build": "react-scripts build",
13 | "test": "react-scripts test --env=jsdom",
14 | "eject": "react-scripts eject"
15 | },
16 | "devDependencies": {
17 | "enzyme": "^3.8.0",
18 | "enzyme-adapter-react-16": "^1.7.1",
19 | "enzyme-to-json": "^3.3.5"
20 | }
21 | }
--------------------------------------------------------------------------------
/src/Hangman.css:
--------------------------------------------------------------------------------
1 | .Hangman {
2 | width: 400px;
3 | color: black;
4 | text-align: center;
5 | zoom: 1.3;
6 | }
7 |
8 | .Hangman img {
9 | border: 10px solid white;
10 | box-shadow: 0 10px 30px rgba(0, 0, 0, 0.27),
11 | 0 0 40px rgba(0, 0, 0, 0.06) inset;
12 | }
13 |
14 | .Hangman h1 {
15 | font-size: 4rem;
16 | font-weight: 100;
17 | margin-bottom: 0.1em;
18 | margin-top: 0;
19 | }
20 |
21 | .Hangman-word {
22 | letter-spacing: 1em;
23 | margin: 0.4em -1em 0.2em 0;
24 | font-size: 2rem;
25 | }
26 |
27 | .Hangman-btns {
28 | text-align: center;
29 | display: inline-block;
30 | width: 250px;
31 | margin-top: 0;
32 | }
33 |
34 | .Hangman button {
35 | border: none;
36 | font-family: inherit;
37 | font-size: 1rem;
38 | cursor: pointer;
39 | width: 30px;
40 | margin: 5px 2px 2px 2px;
41 | letter-spacing: 1px;
42 | outline: none;
43 | background: #ffc107;
44 | color: #fff;
45 | box-shadow: 0 6px #ff9800;
46 | border-radius: 5px;
47 | padding-top: 4px;
48 | }
49 |
50 | .Hangman button:hover {
51 | background-color: #ff9800;
52 | }
53 |
54 | .Hangman button:disabled {
55 | background: #bdbdbd;
56 | color: #eeeeee;
57 | box-shadow: 0 6px #9e9e9e;
58 | }
59 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
12 |
13 |
22 | React App
23 |
24 |
25 |
28 |
29 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/src/Hangman.js:
--------------------------------------------------------------------------------
1 | import React, { Component } from "react";
2 | import "./Hangman.css";
3 | import img0 from "./0.jpg";
4 | import img1 from "./1.jpg";
5 | import img2 from "./2.jpg";
6 | import img3 from "./3.jpg";
7 | import img4 from "./4.jpg";
8 | import img5 from "./5.jpg";
9 | import img6 from "./6.jpg";
10 |
11 | class Hangman extends Component {
12 | /** by default, allow 6 guesses and use provided gallows images. */
13 | static defaultProps = {
14 | maxWrong: 6,
15 | images: [img0, img1, img2, img3, img4, img5, img6]
16 | };
17 |
18 | constructor(props) {
19 | super(props);
20 | this.state = { nWrong: 0, guessed: new Set(), answer: "apple" };
21 | this.handleGuess = this.handleGuess.bind(this);
22 | }
23 |
24 | /** guessedWord: show current-state of word:
25 | if guessed letters are {a,p,e}, show "app_e" for "apple"
26 | */
27 | guessedWord() {
28 | return this.state.answer
29 | .split("")
30 | .map(ltr => (this.state.guessed.has(ltr) ? ltr : "_"));
31 | }
32 |
33 | /** handleGuest: handle a guessed letter:
34 | - add to guessed letters
35 | - if not in answer, increase number-wrong guesses
36 | */
37 | handleGuess(evt) {
38 | let ltr = evt.target.value;
39 | this.setState(st => ({
40 | guessed: st.guessed.add(ltr),
41 | nWrong: st.nWrong + (st.answer.includes(ltr) ? 0 : 1)
42 | }));
43 | }
44 |
45 | /** generateButtons: return array of letter buttons to render */
46 | generateButtons() {
47 | return "abcdefghijklmnopqrstuvwxyz".split("").map(ltr => (
48 |
56 | ));
57 | }
58 |
59 | /** render: render game */
60 | render() {
61 | let gameOver=this.state.nWrong>=this.props.maxWrong;
62 | return (
63 |
64 |
Hangman
65 |

66 |
Number Of Incorrect Guesses {this.state.nWrong}
67 |
{!gameOver?this.guessedWord():this.state.answer}
68 |
69 | {!gameOver?this.generateButtons():
70 | `You Lose The Correct Word was ${this.state.answer} `}
71 |
72 |
73 |
74 | );
75 | }
76 | }
77 |
78 | export default Hangman;
79 |
--------------------------------------------------------------------------------
/src/registerServiceWorker.js:
--------------------------------------------------------------------------------
1 | // In production, we register a service worker to serve assets from local cache.
2 |
3 | // This lets the app load faster on subsequent visits in production, and gives
4 | // it offline capabilities. However, it also means that developers (and users)
5 | // will only see deployed updates on the "N+1" visit to a page, since previously
6 | // cached resources are updated in the background.
7 |
8 | // To learn more about the benefits of this model, read https://goo.gl/KwvDNy.
9 | // This link also includes instructions on opting out of this behavior.
10 |
11 | const isLocalhost = Boolean(
12 | window.location.hostname === 'localhost' ||
13 | // [::1] is the IPv6 localhost address.
14 | window.location.hostname === '[::1]' ||
15 | // 127.0.0.1/8 is considered localhost for IPv4.
16 | window.location.hostname.match(
17 | /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/
18 | )
19 | );
20 |
21 | export default function register() {
22 | if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {
23 | // The URL constructor is available in all browsers that support SW.
24 | const publicUrl = new URL(process.env.PUBLIC_URL, window.location);
25 | if (publicUrl.origin !== window.location.origin) {
26 | // Our service worker won't work if PUBLIC_URL is on a different origin
27 | // from what our page is served on. This might happen if a CDN is used to
28 | // serve assets; see https://github.com/facebookincubator/create-react-app/issues/2374
29 | return;
30 | }
31 |
32 | window.addEventListener('load', () => {
33 | const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;
34 |
35 | if (isLocalhost) {
36 | // This is running on localhost. Lets check if a service worker still exists or not.
37 | checkValidServiceWorker(swUrl);
38 |
39 | // Add some additional logging to localhost, pointing developers to the
40 | // service worker/PWA documentation.
41 | navigator.serviceWorker.ready.then(() => {
42 | console.log(
43 | 'This web app is being served cache-first by a service ' +
44 | 'worker. To learn more, visit https://goo.gl/SC7cgQ'
45 | );
46 | });
47 | } else {
48 | // Is not local host. Just register service worker
49 | registerValidSW(swUrl);
50 | }
51 | });
52 | }
53 | }
54 |
55 | function registerValidSW(swUrl) {
56 | navigator.serviceWorker
57 | .register(swUrl)
58 | .then(registration => {
59 | registration.onupdatefound = () => {
60 | const installingWorker = registration.installing;
61 | installingWorker.onstatechange = () => {
62 | if (installingWorker.state === 'installed') {
63 | if (navigator.serviceWorker.controller) {
64 | // At this point, the old content will have been purged and
65 | // the fresh content will have been added to the cache.
66 | // It's the perfect time to display a "New content is
67 | // available; please refresh." message in your web app.
68 | console.log('New content is available; please refresh.');
69 | } else {
70 | // At this point, everything has been precached.
71 | // It's the perfect time to display a
72 | // "Content is cached for offline use." message.
73 | console.log('Content is cached for offline use.');
74 | }
75 | }
76 | };
77 | };
78 | })
79 | .catch(error => {
80 | console.error('Error during service worker registration:', error);
81 | });
82 | }
83 |
84 | function checkValidServiceWorker(swUrl) {
85 | // Check if the service worker can be found. If it can't reload the page.
86 | fetch(swUrl)
87 | .then(response => {
88 | // Ensure service worker exists, and that we really are getting a JS file.
89 | if (
90 | response.status === 404 ||
91 | response.headers.get('content-type').indexOf('javascript') === -1
92 | ) {
93 | // No service worker found. Probably a different app. Reload the page.
94 | navigator.serviceWorker.ready.then(registration => {
95 | registration.unregister().then(() => {
96 | window.location.reload();
97 | });
98 | });
99 | } else {
100 | // Service worker found. Proceed as normal.
101 | registerValidSW(swUrl);
102 | }
103 | })
104 | .catch(() => {
105 | console.log(
106 | 'No internet connection found. App is running in offline mode.'
107 | );
108 | });
109 | }
110 |
111 | export function unregister() {
112 | if ('serviceWorker' in navigator) {
113 | navigator.serviceWorker.ready.then(registration => {
114 | registration.unregister();
115 | });
116 | }
117 | }
118 |
--------------------------------------------------------------------------------
/src/words.js:
--------------------------------------------------------------------------------
1 | var ENGLISH_WORDS = [
2 | "their",
3 | "would",
4 | "about",
5 | "there",
6 | "think",
7 | "which",
8 | "people",
9 | "could",
10 | "other",
11 | "these",
12 | "first",
13 | "thing",
14 | "those",
15 | "woman",
16 | "child",
17 | "there",
18 | "after",
19 | "should",
20 | "world",
21 | "school",
22 | "still",
23 | "three",
24 | "state",
25 | "never",
26 | "become",
27 | "really",
28 | "family",
29 | "leave",
30 | "while",
31 | "great",
32 | "group",
33 | "begin",
34 | "where",
35 | "every",
36 | "start",
37 | "might",
38 | "about",
39 | "place",
40 | "again",
41 | "where",
42 | "system",
43 | "right",
44 | "during",
45 | "small",
46 | "number",
47 | "always",
48 | "night",
49 | "point",
50 | "today",
51 | "bring",
52 | "happen",
53 | "before",
54 | "large",
55 | "under",
56 | "water",
57 | "write",
58 | "mother",
59 | "money",
60 | "story",
61 | "young",
62 | "month",
63 | "right",
64 | "study",
65 | "though",
66 | "issue",
67 | "black",
68 | "little",
69 | "house",
70 | "after",
71 | "since",
72 | "around",
73 | "friend",
74 | "father",
75 | "until",
76 | "power",
77 | "often",
78 | "among",
79 | "stand",
80 | "member",
81 | "almost",
82 | "later",
83 | "white",
84 | "least",
85 | "learn",
86 | "change",
87 | "minute",
88 | "right",
89 | "social",
90 | "watch",
91 | "follow",
92 | "around",
93 | "parent",
94 | "create",
95 | "public",
96 | "speak",
97 | "others",
98 | "level",
99 | "allow",
100 | "office",
101 | "spend",
102 | "health",
103 | "person",
104 | "party",
105 | "within",
106 | "result",
107 | "change",
108 | "reason",
109 | "early",
110 | "before",
111 | "moment",
112 | "force",
113 | "offer",
114 | "enough",
115 | "across",
116 | "second",
117 | "maybe",
118 | "toward",
119 | "policy",
120 | "music",
121 | "appear",
122 | "human",
123 | "serve",
124 | "market",
125 | "expect",
126 | "sense",
127 | "build",
128 | "nation",
129 | "death",
130 | "course",
131 | "behind",
132 | "reach",
133 | "local",
134 | "remain",
135 | "effect",
136 | "class",
137 | "raise",
138 | "little",
139 | "field",
140 | "former",
141 | "major",
142 | "along",
143 | "report",
144 | "better",
145 | "effort",
146 | "decide",
147 | "strong",
148 | "heart",
149 | "leader",
150 | "light",
151 | "voice",
152 | "whole",
153 | "police",
154 | "return",
155 | "price",
156 | "report",
157 | "carry",
158 | "drive",
159 | "break",
160 | "better",
161 | "thank",
162 | "value",
163 | "action",
164 | "model",
165 | "season",
166 | "early",
167 | "player",
168 | "agree",
169 | "record",
170 | "paper",
171 | "space",
172 | "ground",
173 | "event",
174 | "whose",
175 | "matter",
176 | "center",
177 | "couple",
178 | "table",
179 | "court",
180 | "teach",
181 | "figure",
182 | "street",
183 | "image",
184 | "itself",
185 | "phone",
186 | "either",
187 | "cover",
188 | "quite",
189 | "clear",
190 | "piece",
191 | "recent",
192 | "doctor",
193 | "worker",
194 | "movie",
195 | "north",
196 | "simply",
197 | "third",
198 | "catch",
199 | "source",
200 | "nearly",
201 | "choose",
202 | "cause",
203 | "point",
204 | "window",
205 | "listen",
206 | "chance",
207 | "energy",
208 | "period",
209 | "course",
210 | "summer",
211 | "plant",
212 | "likely",
213 | "short",
214 | "letter",
215 | "choice",
216 | "place",
217 | "single",
218 | "south",
219 | "floor",
220 | "church",
221 | "close",
222 | "future",
223 | "wrong",
224 | "anyone",
225 | "myself",
226 | "sport",
227 | "board",
228 | "fight",
229 | "throw",
230 | "second",
231 | "order",
232 | "author",
233 | "focus",
234 | "blood",
235 | "agency",
236 | "nature",
237 | "color",
238 | "store",
239 | "reduce",
240 | "sound",
241 | "before",
242 | "enter",
243 | "share",
244 | "common",
245 | "other",
246 | "series",
247 | "animal",
248 | "factor",
249 | "decade",
250 | "shoot",
251 | "seven",
252 | "artist",
253 | "scene",
254 | "stock",
255 | "career",
256 | "eight",
257 | "beyond",
258 | "happy",
259 | "occur",
260 | "media",
261 | "ready",
262 | "simple",
263 | "accept",
264 | "answer",
265 | "argue",
266 | "amount",
267 | "staff",
268 | "growth",
269 | "degree",
270 | "wonder",
271 | "attack",
272 | "region",
273 | "pretty",
274 | "trade",
275 | "arrive",
276 | "lawyer",
277 | "glass",
278 | "answer",
279 | "skill",
280 | "sister",
281 | "crime",
282 | "stage",
283 | "design",
284 | "state",
285 | "little",
286 | "indeed",
287 | "force",
288 | "truth",
289 | "check",
290 | "public",
291 | "rather",
292 | "laugh",
293 | "guess",
294 | "study",
295 | "prove",
296 | "entire",
297 | "design",
298 | "enough",
299 | "forget",
300 | "since",
301 | "claim",
302 | "remove",
303 | "close",
304 | "sound",
305 | "enjoy",
306 | "legal",
307 | "final",
308 | "green",
309 | "memory",
310 | "above",
311 | "trial",
312 | "expert",
313 | "spring",
314 | "radio",
315 | "visit",
316 | "avoid",
317 | "close",
318 | "finish",
319 | "theory",
320 | "impact",
321 | "charge",
322 | "reveal",
323 | "weapon",
324 | "peace",
325 | "apply",
326 | "shake",
327 | "manage",
328 | "chair",
329 | "camera",
330 | "weight",
331 | "treat",
332 | "affect",
333 | "inside",
334 | "style",
335 | "adult",
336 | "worry",
337 | "range",
338 | "rather",
339 | "writer",
340 | "middle",
341 | "dream",
342 | "stuff",
343 | "detail",
344 | "method",
345 | "hotel",
346 | "heavy",
347 | "sexual",
348 | "cause",
349 | "tough",
350 | "exist",
351 | "agent",
352 | "owner",
353 | "ahead",
354 | "cancer",
355 | "coach",
356 | "total",
357 | "finger",
358 | "garden",
359 | "notice",
360 | "modern",
361 | "civil",
362 | "budget",
363 | "mouth",
364 | "victim",
365 | "threat",
366 | "smile",
367 | "score",
368 | "break",
369 | "dinner",
370 | "figure",
371 | "relate",
372 | "travel",
373 | "debate",
374 | "front",
375 | "admit",
376 | "senior",
377 | "assume",
378 | "alone",
379 | "suffer",
380 | "speech",
381 | "option",
382 | "fresh",
383 | "forest",
384 | "video",
385 | "global",
386 | "reform",
387 | "access",
388 | "judge",
389 | "credit",
390 | "corner",
391 | "recall",
392 | "stare",
393 | "safety",
394 | "troop",
395 | "income",
396 | "track",
397 | "basic",
398 | "strike",
399 | "plane",
400 | "nobody",
401 | "object",
402 | "labor",
403 | "refer",
404 | "client",
405 | "touch",
406 | "please",
407 | "attend",
408 | "sleep",
409 | "press",
410 | "spirit",
411 | "brain",
412 | "dozen",
413 | "along",
414 | "battle",
415 | "sorry",
416 | "crisis",
417 | "stick",
418 | "define",
419 | "easily",
420 | "vision",
421 | "status",
422 | "normal",
423 | "stone",
424 | "slowly",
425 | "scale",
426 | "driver",
427 | "drink",
428 | "front",
429 | "handle",
430 | "truck",
431 | "return",
432 | "survey",
433 | "winter",
434 | "refuse",
435 | "sales",
436 | "screen",
437 | "future",
438 | "middle",
439 | "shape",
440 | "reader",
441 | "crowd",
442 | "horse",
443 | "target",
444 | "prison",
445 | "guard",
446 | "terms",
447 | "demand",
448 | "share",
449 | "flight",
450 | "inside",
451 | "emerge",
452 | "quick",
453 | "light",
454 | "pound",
455 | "basis",
456 | "bright",
457 | "guest",
458 | "sample",
459 | "block",
460 | "settle",
461 | "while",
462 | "highly",
463 | "title",
464 | "mostly",
465 | "lesson",
466 | "faith",
467 | "river",
468 | "living",
469 | "count",
470 | "unless",
471 | "marry",
472 | "order",
473 | "border",
474 | "gather",
475 | "limit",
476 | "claim",
477 | "worth",
478 | "critic",
479 | "aspect",
480 | "result",
481 | "insist",
482 | "annual",
483 | "affair",
484 | "until",
485 | "spread",
486 | "ignore",
487 | "belief",
488 | "murder",
489 | "review",
490 | "editor",
491 | "engage",
492 | "coffee",
493 | "speed",
494 | "cross",
495 | "anyway",
496 | "commit",
497 | "female",
498 | "youth",
499 | "afraid",
500 | "native",
501 | "broad",
502 | "twice",
503 | "charge",
504 | "grade",
505 | "focus",
506 | "smile",
507 | "quiet",
508 | "dress",
509 | "aware",
510 | "drive",
511 | "active",
512 | "extend",
513 | "chief",
514 | "below",
515 | "voter",
516 | "demand",
517 | "remind",
518 | "moral",
519 | "visit",
520 | "depend",
521 | "photo",
522 | "direct",
523 | "daily",
524 | "famous",
525 | "flower",
526 | "supply",
527 | "fully",
528 | "actor",
529 | "birth",
530 | "search",
531 | "circle",
532 | "device",
533 | "front",
534 | "bottom",
535 | "island",
536 | "clean",
537 | "studio",
538 | "train",
539 | "damage",
540 | "plate",
541 | "press",
542 | "start",
543 | "alive",
544 | "intend",
545 | "attack",
546 | "abuse",
547 | "extra",
548 | "danger",
549 | "desire",
550 | "injury",
551 | "paint",
552 | "direct",
553 | "fight",
554 | "climb",
555 | "sweet",
556 | "engine",
557 | "fourth",
558 | "expand",
559 | "metal",
560 | "ticket",
561 | "urban",
562 | "mental",
563 | "lunch",
564 | "farmer",
565 | "above",
566 | "sugar",
567 | "planet",
568 | "obtain",
569 | "enemy",
570 | "invite",
571 | "repeat",
572 | "panel",
573 | "alone",
574 | "pocket",
575 | "breath",
576 | "sight",
577 | "cover",
578 | "adopt",
579 | "works",
580 | "belong",
581 | "advice",
582 | "empty",
583 | "trail",
584 | "novel",
585 | "breast",
586 | "human",
587 | "theme",
588 | "storm",
589 | "union",
590 | "record",
591 | "thanks",
592 | "fruit",
593 | "under",
594 | "yellow",
595 | "prime",
596 | "shadow",
597 | "dance",
598 | "limit",
599 | "being",
600 | "shift",
601 | "locate",
602 | "county",
603 | "bridge",
604 | "train",
605 | "trend",
606 | "profit",
607 | "angry",
608 | "muscle",
609 | "notion",
610 | "prefer",
611 | "truly",
612 | "earth",
613 | "chest",
614 | "search",
615 | "thick",
616 | "museum",
617 | "beauty",
618 | "unique",
619 | "ethnic",
620 | "stress",
621 | "select",
622 | "actual",
623 | "bottle",
624 | "hardly",
625 | "launch",
626 | "dress",
627 | "defend",
628 | "matter",
629 | "judge",
630 | "sheet",
631 | "ought",
632 | "ensure",
633 | "extent",
634 | "chief",
635 | "brown",
636 | "shirt",
637 | "pilot",
638 | "estate",
639 | "guide",
640 | "steal",
641 | "pursue",
642 | "funny",
643 | "blame",
644 | "crazy",
645 | "chain",
646 | "branch",
647 | "relief",
648 | "manner",
649 | "rating",
650 | "golden",
651 | "motion",
652 | "gender",
653 | "solve",
654 | "equal",
655 | "forth",
656 | "frame",
657 | "except",
658 | "trust",
659 | "ocean",
660 | "score",
661 | "afford",
662 | "regime",
663 | "appeal",
664 | "mirror",
665 | "tooth",
666 | "smart",
667 | "length",
668 | "topic",
669 | "issue",
670 | "range",
671 | "secret",
672 | "nurse",
673 | "aside",
674 | "master",
675 | "check",
676 | "stand",
677 | "clear",
678 | "clean",
679 | "except",
680 | "doubt",
681 | "grant",
682 | "cloud",
683 | "winner",
684 | "volume",
685 | "travel",
686 | "pepper",
687 | "below",
688 | "cheap",
689 | "beach",
690 | "divide",
691 | "oppose",
692 | "route",
693 | "league",
694 | "upper",
695 | "tired",
696 | "employ",
697 | "dance",
698 | "fewer",
699 | "apart",
700 | "match",
701 | "barely",
702 | "sector",
703 | "beside",
704 | "black",
705 | "proud",
706 | "waste",
707 | "merely",
708 | "wheel",
709 | "female",
710 | "invest",
711 | "cable",
712 | "expose",
713 | "rural",
714 | "narrow",
715 | "cream",
716 | "solid",
717 | "noise",
718 | "grass",
719 | "either",
720 | "drink",
721 | "accuse",
722 | "useful",
723 | "secret",
724 | "reject",
725 | "talent",
726 | "taste",
727 | "escape",
728 | "height",
729 | "assess",
730 | "sleep",
731 | "plenty",
732 | "first",
733 | "sharp",
734 | "lower",
735 | "behind",
736 | "campus",
737 | "proper",
738 | "guilty",
739 | "living",
740 | "column",
741 | "signal",
742 | "honor",
743 | "regard",
744 | "twenty",
745 | "knock",
746 | "review",
747 | "offer",
748 | "asset",
749 | "prayer",
750 | "cheese",
751 | "permit",
752 | "bread",
753 | "scream",
754 | "deeply",
755 | "green",
756 | "lucky",
757 | "agenda",
758 | "unable",
759 | "arrest",
760 | "brief",
761 | "steel",
762 | "shout",
763 | "visual",
764 | "fairly",
765 | "silent",
766 | "layer",
767 | "later",
768 | "slide",
769 | "widely",
770 | "inform",
771 | "bother",
772 | "enable",
773 | "saving",
774 | "desert",
775 | "shall",
776 | "error",
777 | "double",
778 | "print",
779 | "formal",
780 | "album",
781 | "joint",
782 | "reply",
783 | "cycle",
784 | "whole",
785 | "stream",
786 | "trust",
787 | "grand",
788 | "hello",
789 | "knife",
790 | "racial",
791 | "phase",
792 | "potato",
793 | "quote",
794 | "online",
795 | "elect",
796 | "jacket",
797 | "rarely",
798 | "shift",
799 | "touch",
800 | "sauce",
801 | "priest",
802 | "shock",
803 | "adjust",
804 | "retire",
805 | "habit",
806 | "juice",
807 | "attach",
808 | "coach",
809 | "severe",
810 | "impose",
811 | "other",
812 | "entry",
813 | "symbol",
814 | "still",
815 | "trade",
816 | "maker",
817 | "total",
818 | "usual",
819 | "anger",
820 | "round",
821 | "clinic",
822 | "smell",
823 | "light",
824 | "tomato",
825 | "butter",
826 | "block",
827 | "surely",
828 | "tower",
829 | "smoke",
830 | "glance",
831 | "fellow",
832 | "smooth",
833 | "nearby",
834 | "shape",
835 | "coast",
836 | "silver",
837 | "watch",
838 | "inner",
839 | "junior",
840 | "rather",
841 | "throat",
842 | "salary",
843 | "swing",
844 | "pretty",
845 | "strike",
846 | "plant",
847 | "unlike",
848 | "resist",
849 | "supply",
850 | "assist",
851 | "viewer",
852 | "mayor",
853 | "secure",
854 | "smoke",
855 | "fifth",
856 | "favor",
857 | "weigh",
858 | "recipe",
859 | "wooden",
860 | "false",
861 | "honest",
862 | "essay",
863 | "giant",
864 | "origin",
865 | "advise",
866 | "count",
867 | "depth",
868 | "wealth",
869 | "shell",
870 | "onion",
871 | "deputy",
872 | "brand",
873 | "assure",
874 | "award",
875 | "dealer",
876 | "arise",
877 | "armed",
878 | "phrase",
879 | "stake",
880 | "dream",
881 | "fiber",
882 | "switch",
883 | "minor",
884 | "killer",
885 | "assign",
886 | "label",
887 | "index",
888 | "draft",
889 | "heaven",
890 | "rough",
891 | "drama",
892 | "wonder",
893 | "clock",
894 | "sweep",
895 | "house",
896 | "button",
897 | "ahead",
898 | "super",
899 | "yield",
900 | "fence",
901 | "paint",
902 | "bottom",
903 | "bunch",
904 | "found",
905 | "burden",
906 | "react",
907 | "string",
908 | "taste",
909 | "cheek",
910 | "match",
911 | "resort",
912 | "tissue",
913 | "broken",
914 | "apple",
915 | "track",
916 | "virus",
917 | "stupid",
918 | "occupy",
919 | "cousin",
920 | "blind",
921 | "white",
922 | "honor",
923 | "retain",
924 | "latter",
925 | "slave",
926 | "terror",
927 | "though",
928 | "elite",
929 | "bullet",
930 | "tight",
931 | "chart",
932 | "solar",
933 | "square",
934 | "stick",
935 | "gently",
936 | "strip",
937 | "detect",
938 | "likely",
939 | "market",
940 | "salad",
941 | "pause",
942 | "remote",
943 | "bench",
944 | "lover",
945 | "newly",
946 | "imply",
947 | "mutual",
948 | "pride",
949 | "mainly",
950 | "freeze",
951 | "ideal",
952 | "worth",
953 | "singer",
954 | "evolve",
955 | "partly",
956 | "smell",
957 | "thirty",
958 | "crash",
959 | "craft",
960 | "treaty",
961 | "double",
962 | "fault",
963 | "loose",
964 | "prior",
965 | "relax",
966 | "stair",
967 | "proof",
968 | "sudden",
969 | "dirty",
970 | "tongue",
971 | "alter",
972 | "target",
973 | "stable",
974 | "appeal",
975 | "split",
976 | "steady",
977 | "vital",
978 | "stress",
979 | "adapt",
980 | "honey",
981 | "round",
982 | "vessel",
983 | "tribe",
984 | "shelf",
985 | "buyer",
986 | "dining",
987 | "wisdom",
988 | "garlic",
989 | "poetry",
990 | "doubt",
991 | "scared",
992 | "guide",
993 | "since",
994 | "fellow",
995 | "slight",
996 | "shade",
997 | "mount",
998 | "angle",
999 | "differ",
1000 | "custom",
1001 | "store",
1002 | "damage",
1003 | "carbon",
1004 | "closer",
1005 | "scheme",
1006 | "crack",
1007 | "galaxy",
1008 | "given",
1009 | "trace",
1010 | "meter",
1011 | "arrest",
1012 | "rapid",
1013 | "hunter",
1014 | "infant",
1015 | "fifty",
1016 | "porch",
1017 | "waste",
1018 | "derive",
1019 | "fabric",
1020 | "rifle",
1021 | "trick",
1022 | "asleep",
1023 | "tennis",
1024 | "nerve",
1025 | "barrel",
1026 | "ratio",
1027 | "humor",
1028 | "glove",
1029 | "modest",
1030 | "delay",
1031 | "stroke",
1032 | "scope",
1033 | "badly",
1034 | "prompt",
1035 | "absorb",
1036 | "eager",
1037 | "across",
1038 | "cotton",
1039 | "motor",
1040 | "flavor",
1041 | "float",
1042 | "orange",
1043 | "assert",
1044 | "blade",
1045 | "print",
1046 | "cabin",
1047 | "valley",
1048 | "yours",
1049 | "pitch",
1050 | "versus",
1051 | "lemon",
1052 | "hungry",
1053 | "sense",
1054 | "wander",
1055 | "submit",
1056 | "naked",
1057 | "legacy",
1058 | "shrug",
1059 | "flame",
1060 | "wound",
1061 | "shower",
1062 | "depict",
1063 | "flesh",
1064 | "garage",
1065 | "borrow",
1066 | "comedy",
1067 | "twelve",
1068 | "weekly",
1069 | "grain",
1070 | "brush",
1071 | "devote",
1072 | "crack",
1073 | "seize",
1074 | "ethics",
1075 | "summit",
1076 | "gifted",
1077 | "medium",
1078 | "grant",
1079 | "shore",
1080 | "basket",
1081 | "powder",
1082 | "ghost",
1083 | "cookie",
1084 | "swing",
1085 | "orange",
1086 | "awful",
1087 | "admire",
1088 | "exceed",
1089 | "rhythm",
1090 | "lovely",
1091 | "script",
1092 | "tactic",
1093 | "crash",
1094 | "piano",
1095 | "margin",
1096 | "mouse",
1097 | "chase",
1098 | "brick",
1099 | "patch",
1100 | "horror",
1101 | "swear",
1102 | "defeat",
1103 | "slice",
1104 | "sacred",
1105 | "exact",
1106 | "uncle",
1107 | "square",
1108 | "soccer",
1109 | "tunnel",
1110 | "grave",
1111 | "virtue",
1112 | "abroad",
1113 | "makeup",
1114 | "couch",
1115 | "legend",
1116 | "shine",
1117 | "upset",
1118 | "remark",
1119 | "resign",
1120 | "reward",
1121 | "gentle",
1122 | "organ",
1123 | "invent",
1124 | "tight",
1125 | "ritual",
1126 | "insect",
1127 | "salmon",
1128 | "favor",
1129 | "magic",
1130 | "combat",
1131 | "brush",
1132 | "jeans",
1133 | "flour",
1134 | "bitter",
1135 | "slope",
1136 | "subtle",
1137 | "bishop",
1138 | "delay",
1139 | "candy",
1140 | "final",
1141 | "medal",
1142 | "export",
1143 | "curve",
1144 | "logic",
1145 | "harsh",
1146 | "closet",
1147 | "greet",
1148 | "favor",
1149 | "murder",
1150 | "retail",
1151 | "march",
1152 | "snake",
1153 | "pitch",
1154 | "excuse",
1155 | "cross",
1156 | "online",
1157 | "daily",
1158 | "flash",
1159 | "elbow",
1160 | "deadly",
1161 | "plead",
1162 | "sixth",
1163 | "suburb",
1164 | "unlike",
1165 | "trunk",
1166 | "rumor",
1167 | "render",
1168 | "cloth",
1169 | "reach",
1170 | "plain",
1171 | "fraud",
1172 | "array",
1173 | "strict",
1174 | "burst",
1175 | "speed",
1176 | "motive",
1177 | "label",
1178 | "flood",
1179 | "notice",
1180 | "arena",
1181 | "laugh",
1182 | "drift",
1183 | "drain",
1184 | "hurry",
1185 | "temple",
1186 | "medium",
1187 | "random",
1188 | "wrist",
1189 | "domain",
1190 | "guilt",
1191 | "cattle",
1192 | "fiscal",
1193 | "skirt",
1194 | "hence",
1195 | "endure",
1196 | "strain",
1197 | "guitar",
1198 | "behave",
1199 | "dancer",
1200 | "guard",
1201 | "await",
1202 | "spill",
1203 | "grace",
1204 | "colony",
1205 | "slide",
1206 | "closed",
1207 | "towel",
1208 | "modify",
1209 | "award",
1210 | "glance",
1211 | "prize",
1212 | "boost",
1213 | "alarm",
1214 | "weird",
1215 | "sweat",
1216 | "outer",
1217 | "drunk",
1218 | "survey",
1219 | "stuff",
1220 | "govern",
1221 | "ballot",
1222 | "praise",
1223 | "injure",
1224 | "nearby",
1225 | "pause",
1226 | "excuse",
1227 | "chaos",
1228 | "short",
1229 | "canvas",
1230 | "forty",
1231 | "matter",
1232 | "lobby",
1233 | "format",
1234 | "trait",
1235 | "turkey",
1236 | "abuse",
1237 | "thumb",
1238 | "unity",
1239 | "convey",
1240 | "twist",
1241 | "finish",
1242 | "shame",
1243 | "rebel",
1244 | "frozen",
1245 | "desire",
1246 | "spouse",
1247 | "fluid",
1248 | "resume",
1249 | "sodium",
1250 | "bounce",
1251 | "click",
1252 | "signal",
1253 | "pickup",
1254 | "carve",
1255 | "needle",
1256 | "belly",
1257 | "scare",
1258 | "timing",
1259 | "ankle",
1260 | "rescue",
1261 | "firmly",
1262 | "rider",
1263 | "poster",
1264 | "crawl",
1265 | "oxygen",
1266 | "magic",
1267 | "donor",
1268 | "pastor",
1269 | "opera",
1270 | "frame",
1271 | "punish",
1272 | "giant",
1273 | "equity",
1274 | "nwrong",
1275 | "statue",
1276 | "repair",
1277 | "decent",
1278 | "clerk",
1279 | "rescue",
1280 | "purple",
1281 | "laser",
1282 | "eating",
1283 | "parade",
1284 | "realm",
1285 | "strip",
1286 | "cancel",
1287 | "blend",
1288 | "slice",
1289 | "pizza",
1290 | "debate",
1291 | "candle",
1292 | "handle",
1293 | "worry",
1294 | "entity",
1295 | "inside",
1296 | "vanish",
1297 | "trail",
1298 | "racism",
1299 | "casual",
1300 | "enroll",
1301 | "value",
1302 | "intent",
1303 | "civic",
1304 | "steep",
1305 | "alien",
1306 | "scary",
1307 | "angel",
1308 | "switch",
1309 | "repair",
1310 | "toilet",
1311 | "hidden",
1312 | "tender",
1313 | "lonely",
1314 | "silly",
1315 | "shared",
1316 | "pillow",
1317 | "spread",
1318 | "ruling",
1319 | "lately",
1320 | "ranch",
1321 | "softly",
1322 | "verbal",
1323 | "tribal",
1324 | "import",
1325 | "spring",
1326 | "divine",
1327 | "elder",
1328 | "genius",
1329 | "quest",
1330 | "juror",
1331 | "broker",
1332 | "credit",
1333 | "shock",
1334 | "stiff",
1335 | "output",
1336 | "please",
1337 | "toxic",
1338 | "grief",
1339 | "rocket",
1340 | "donate",
1341 | "inmate",
1342 | "tackle",
1343 | "senior",
1344 | "carpet",
1345 | "bubble",
1346 | "buddy",
1347 | "sword",
1348 | "flash",
1349 | "glory",
1350 | "faint",
1351 | "queen",
1352 | "input",
1353 | "bloody",
1354 | "defeat",
1355 | "steam",
1356 | "accent",
1357 | "escape",
1358 | "unite",
1359 | "equip",
1360 | "shrimp",
1361 | "bless",
1362 | "bonus",
1363 | "mixed",
1364 | "orbit",
1365 | "grasp",
1366 | "spite",
1367 | "voting",
1368 | "patrol",
1369 | "trace",
1370 | "wagon",
1371 | "sheer",
1372 | "prior",
1373 | "immune",
1374 | "exotic",
1375 | "secure",
1376 | "thigh",
1377 | "drawer",
1378 | "regard",
1379 | "sheep",
1380 | "runner",
1381 | "empire",
1382 | "catch",
1383 | "whale",
1384 | "draft",
1385 | "skull",
1386 | "puzzle",
1387 | "tragic",
1388 | "safely",
1389 | "eleven",
1390 | "bureau",
1391 | "breeze",
1392 | "costly",
1393 | "object",
1394 | "spell",
1395 | "insert",
1396 | "booth",
1397 | "helmet",
1398 | "waist",
1399 | "royal",
1400 | "panic",
1401 | "crush",
1402 | "cliff",
1403 | "casino",
1404 | "tumor",
1405 | "charge",
1406 | "pulse",
1407 | "fixed",
1408 | "diary",
1409 | "irony",
1410 | "spoon",
1411 | "midst",
1412 | "alley",
1413 | "upset",
1414 | "rival",
1415 | "punch",
1416 | "hockey",
1417 | "known",
1418 | "purse",
1419 | "liquid",
1420 | "foster",
1421 | "cheat",
1422 | "access",
1423 | "fever",
1424 | "filter",
1425 | "rabbit",
1426 | "dried",
1427 | "shove",
1428 | "stove",
1429 | "alike",
1430 | "dough",
1431 | "outfit",
1432 | "patent",
1433 | "quote",
1434 | "trash",
1435 | "gross",
1436 | "pencil",
1437 | "spray",
1438 | "banker",
1439 | "beast",
1440 | "eighth",
1441 | "behalf",
1442 | "shark",
1443 | "reward",
1444 | "fleet",
1445 | "stance",
1446 | "compel",
1447 | "debut",
1448 | "ideal",
1449 | "scent",
1450 | "stack",
1451 | "cease",
1452 | "nasty",
1453 | "shrink",
1454 | "model",
1455 | "wheat",
1456 | "fierce",
1457 | "aisle",
1458 | "weaken",
1459 | "vocal",
1460 | "openly",
1461 | "unfair",
1462 | "deploy",
1463 | "risky",
1464 | "pasta",
1465 | "genre",
1466 | "merit",
1467 | "chunk",
1468 | "ladder",
1469 | "jungle",
1470 | "invade",
1471 | "wound",
1472 | "robot",
1473 | "flood",
1474 | "sphere",
1475 | "boast",
1476 | "major",
1477 | "unfold",
1478 | "collar",
1479 | "streak",
1480 | "added",
1481 | "sneak",
1482 | "monkey",
1483 | "mentor",
1484 | "sleeve",
1485 | "debris",
1486 | "parish",
1487 | "blank",
1488 | "hunger",
1489 | "dying",
1490 | "faster",
1491 | "spare",
1492 | "regret",
1493 | "carrot",
1494 | "cling",
1495 | "blink",
1496 | "squad",
1497 | "plunge",
1498 | "color",
1499 | "chill",
1500 | "refuge",
1501 | "steer",
1502 | "rally",
1503 | "cheer",
1504 | "outlet",
1505 | "intact",
1506 | "vendor",
1507 | "thrive",
1508 | "peanut",
1509 | "steak",
1510 | "comply",
1511 | "awake",
1512 | "strain",
1513 | "patron",
1514 | "liver",
1515 | "solely",
1516 | "banana",
1517 | "palace",
1518 | "cruise",
1519 | "mobile",
1520 | "plain",
1521 | "widow",
1522 | "beard",
1523 | "brake",
1524 | "forbid",
1525 | "brutal",
1526 | "valid",
1527 | "forum",
1528 | "enact",
1529 | "round",
1530 | "thread",
1531 | "light",
1532 | "coming",
1533 | "suite",
1534 | "remark",
1535 | "straw",
1536 | "apart",
1537 | "globe",
1538 | "circle",
1539 | "blast",
1540 | "denial",
1541 | "rental",
1542 | "level",
1543 | "screw",
1544 | "warmth",
1545 | "liquid",
1546 | "yield",
1547 | "battle",
1548 | "drill",
1549 | "cruel",
1550 | "regard",
1551 | "grape",
1552 | "charm",
1553 | "loyal",
1554 | "pound",
1555 | "radar",
1556 | "frown",
1557 | "regain",
1558 | "leave",
1559 | "permit",
1560 | "rubber",
1561 | "freely",
1562 | "update",
1563 | "spark",
1564 | "beyond",
1565 | "marker",
1566 | "preach",
1567 | "bucket",
1568 | "blond",
1569 | "marble",
1570 | "twist",
1571 | "mutter",
1572 | "depart",
1573 | "arrow",
1574 | "trauma",
1575 | "ribbon",
1576 | "screen",
1577 | "within",
1578 | "ridge",
1579 | "brave",
1580 | "crowd",
1581 | "dense",
1582 | "sunny",
1583 | "shorts",
1584 | "swell",
1585 | "soften",
1586 | "sudden",
1587 | "bride",
1588 | "hazard",
1589 | "seldom",
1590 | "launch",
1591 | "weave",
1592 | "timber",
1593 | "flying",
1594 | "devil",
1595 | "cargo",
1596 | "spine",
1597 | "seller",
1598 | "public",
1599 | "marine",
1600 | "boring",
1601 | "fatal",
1602 | "bronze",
1603 | "drown",
1604 | "praise",
1605 | "kneel",
1606 | "vacuum",
1607 | "sensor",
1608 | "manual",
1609 | "pistol",
1610 | "naval",
1611 | ];
1612 |
1613 | function randomWord() {
1614 | return ENGLISH_WORDS[Math.floor(Math.random() * ENGLISH_WORDS.length)];
1615 | }
1616 |
1617 | export { randomWord };
1618 |
--------------------------------------------------------------------------------