monkeytypegame / monkeytypegame/monkeytype
HTML tags aren't entirely semantic
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 20.7k
- Forks
- 3.3k
- PR merge metrics
- No merged PRs in 30d
Description
Did you clear cache before opening an issue?
- I have cleared my cache
Is there an existing issue for this?
- I have searched the existing issues
Does the issue happen when logged in?
Yes
Does the issue happen when logged out?
Yes
Does the issue happen in incognito mode when logged in?
Yes
Does the issue happen in incognito mode when logged out?
Yes
Account name
randomletters
Account config
No response
Current Behavior
The HTML tags throughout the frontend are lacking in semantic structure (i.e., h1 for titles, h2 for subtitles, ul/ol for lists, etc)
Expected Behavior
Currently, the layout looks something like:
<div class="section">
<div class="bigtitle">about</div>
<h2>
Monkeytype is a minimalistic and customizable typing test. It features
many test modes, an account system to save your typing speed history, and
user-configurable features such as themes, sounds, a smooth caret, and
more. Monkeytype attempts to emulate the experience of natural keyboard
typing during a typing test, by unobtrusively presenting the text prompts
and displaying typed characters in-place, providing straightforward,
real-time feedback on typos, speed, and accuracy.
<br />
<br />
Test yourself in various modes, track your progress and improve your
speed.
</h2>
</div>
Using semantics, it would look like:
<section class="section">
<h1 class="bigtitle">about</h1>
<p>
Monkeytype is a minimalistic and customizable typing test. It features
many test modes, an account system to save your typing speed history, and
user-configurable features such as themes, sounds, a smooth caret, and
more. Monkeytype attempts to emulate the experience of natural keyboard
typing during a typing test, by unobtrusively presenting the text prompts
and displaying typed characters in-place, providing straightforward,
real-time feedback on typos, speed, and accuracy.
<br />
<br />
Test yourself in various modes, track your progress and improve your
speed.
</p>
</section>
This would improve SEO and make things more clear for developers
Steps To Reproduce
Go to any .html file in the frontend
Environment
- OS: all
- Browser: all
- Browser Version: all
Anything else?
https://www.w3schools.com/html/html5_semantic_elements.asp
Can I work on this? It's rather tedious, but worth doing
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue points to HTML files throughout the frontend but names no specific file or test. Start by reviewing the frontend HTML files and the linked semantic-elements reference, then identify non-semantic structure such as heading and list misuse. Done means the frontend markup uses appropriate semantic elements consistently and remains visually equivalent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html
- Domain
- accessibility, frontend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100