* Copy over tutorial from old website
Fixed up MDX syntax (self-closing `<br>` and `<img>`, and one `style`
attribute)
* wip
* more wip
* Move tutorial to be consistent with new beta docs structure
* remove HTML comments causing Vercel rendering issues
* Fixed all fixme's, minor clarity improvments, updated code links to codesandbox
* first half of tutorial re-write draft
* Finish tutorial rewrite draft
* Fix some formatting issues
* Migrate tutorial back to JavaScript to fix Sandpack errors
* Fix minor mistakes, formatting, code bugs, clean up images
* Fix empty board image size
* Fix image size and code highlighting issues
* Incorporate feedback from Dan and Sean
* edits (wip)
* edit
* edits
* Update beta/src/content/learn/tutorial-tic-tac-toe.md
Co-authored-by: Strek <ssharishkumar@gmail.com>
* tweak
Co-authored-by: Sophie Alpert <git@sophiebits.com>
Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
Co-authored-by: Strek <ssharishkumar@gmail.com>
The serverUrl variable should be moved inside the component and can be stored as a state to indicate that it's a reactive variable and will be highlighted as such by the linter. Previously the serverUrl variable was stored outside the component function body thus making it a non-reactive value and so it shouldn't have been highlighted by the linter as a useEffect dependency as shown in the concerned example.
The section under consideration 'Removing unnecessary function dependencies' should use the text 'createOptions function' instead of 'options object' to match the given example correctly.
The 'options object' text is being used correctly for the previous section which talks about 'Removing unnecessary object dependencies' however, it must be updated for this section.
In the paragraph:
```
You can wrap an update into a transition only if you have access to the set function of that state. If you want to start a transition in response to some prop or a custom Hook return value, try useDeferredValue instead.
```
The "useDeferredValue" link pointed to "usedeferredvalue" which is an invalid URL, this commit fixes that.