Interviews
Dashboard
Practice questions
Guides
Pricing
Sign in / up
Get full access
Practice by Framework
90+ questions
JavaScript
HTML
CSS
React
Angular
Vue
Svelte
HTML Questions
90+ HTML interview questions, including quiz-style knowledge questions and HTML coding questions.
Try these popular HTML questions
Contact Form
Build a contact form which submits user feedback and contact details to a back end API
Available frameworks
Digital Clock
Build a 7-segment digital clock that shows the current time
Available frameworks
getElementsByTagName
Implement a function to get all DOM elements that match a tag
Languages
HTML
JS
TS
Coding
Quiz
Coding Format
User Interface
JavaScript Utilities
Search coding questions
Sort by
Number of questions
59 questions
Total time
25 hours total
Questions List
Counter
Warm up question
Build a simple counter that increments whenever a button is clicked
Difficulty
Easy
Available frameworks
Users completed
24277 completed
Contact Form
Build a contact form which submits user feedback and contact details to a back end API
Difficulty
Easy
Available frameworks
Users completed
12953 completed
Holy Grail
Build the famous holy grail layout consisting of a header, 3 columns, and a footer
Difficulty
Easy
Available frameworks
Users completed
10083 completed
Mortgage Calculator
Build a calculator that computes the monthly mortgage for a loan
Difficulty
Easy
Available frameworks
Users completed
2818 completed
Tabs
Build a tabs component that displays a list of tab elements and one associated panel of content at a time
Difficulty
Medium
Available frameworks
Users completed
4556 completed
Data Table
Build a users data table with pagination features
Difficulty
Medium
Available frameworks
Users completed
900 completed
Dice Roller
Build a dice roller app that simulates the results of rolling 6-sided dice
Difficulty
Medium
Available frameworks
Users completed
436 completed
File Explorer
Build a file explorer component to navigate files and directories in a tree-like hierarchical viewer
Difficulty
Medium
Available frameworks
Users completed
523 completed
Modal Dialog
Build a reusable modal dialog component that can be opened and closed
Difficulty
Medium
Available frameworks
Users completed
571 completed
Todo List
Build a Todo list that lets users add new tasks and delete existing tasks
Difficulty
Medium
Available frameworks
Users completed
5299 completed
Traffic Light
Build a traffic light where the lights switch from green to yellow to red after predetermined intervals and loop indefinitely
Difficulty
Medium
Available frameworks
Users completed
2351 completed
Digital Clock
Build a 7-segment digital clock that shows the current time
Difficulty
Medium
Available frameworks
Users completed
1433 completed
Image Carousel
Build an image carousel that displays a sequence of images
Difficulty
Medium
Available frameworks
Users completed
429 completed
Job Board
Build a job board that displays the latest job postings from Hacker News
Difficulty
Medium
Available frameworks
Users completed
1724 completed
Accordion
Build an accordion component that a displays a list of vertically stacked sections with each containing a title and content snippet
Difficulty
Easy
Available frameworks
Users completed
3185 completed
Flight Booker
Build a component that books a flight for specified dates
Difficulty
Easy
Available frameworks
Users completed
1892 completed
Generate Table
Generate a table of numbers given the rows and columns
Difficulty
Easy
Available frameworks
Users completed
1702 completed
Progress Bar
Build a progress bar component that shows the percentage completion of an operation
Difficulty
Easy
Available frameworks
Users completed
2792 completed
Progress Bars
Build a list of progress bars that fill up gradually when they are added to the page
Difficulty
Easy
Available frameworks
Users completed
1638 completed
Temperature Converter
Build a temperature converter widget that converts temperature values between Celsius and Fahrenheit
Difficulty
Easy
Available frameworks
Users completed
2290 completed
Tweet
Build a component that resembles a Tweet from Twitter
Difficulty
Easy
Available frameworks
Users completed
1336 completed
Accordion II
Build an accessible accordion component that has the right ARIA roles, states, and properties
Difficulty
Medium
Available frameworks
Users completed
714 completed
Accordion III
Build a fully accessible accordion component that has keyboard support according to ARIA specifications
Difficulty
Medium
Available frameworks
Users completed
383 completed
Analog Clock
Build an analog clock where the hands update and move like a real clock
Difficulty
Medium
Available frameworks
Users completed
583 completed
Data Table II
Build a users data table with sorting features
Difficulty
Medium
Available frameworks
Users completed
211 completed
File Explorer II
Build a semi-accessible file explorer component that has the right ARIA roles, states, and properties
Difficulty
Medium
Available frameworks
Users completed
87 completed
File Explorer III
Build a file explorer component using a flat DOM structure
Difficulty
Medium
Available frameworks
Users completed
79 completed
Grid Lights
Build a grid of lights where the lights deactivate in the reverse order they were activated
Difficulty
Medium
Available frameworks
Users completed
947 completed
Like Button
Build a Like button that changes appearance based on the states
Difficulty
Medium
Available frameworks
Users completed
1076 completed
Modal Dialog II
Build a semi-accessible modal dialog component that has the right ARIA roles, states, and properties
Difficulty
Medium
Available frameworks
Users completed
107 completed
Modal Dialog III
Build a moderately-accessible modal dialog component that supports common ways to close the dialog
Difficulty
Medium
Available frameworks
Users completed
88 completed
Progress Bars II
Build a list of progress bars that fill up gradually in sequence, one at a time
Difficulty
Medium
Available frameworks
Users completed
636 completed
Star Rating
Build a star rating component that shows a row of star icons for users to select the number of filled stars corresponding to the rating
Difficulty
Medium
Available frameworks
Users completed
2092 completed
Tabs II
Build a semi-accessible tabs component that has the right ARIA roles, states, and properties
Difficulty
Medium
Available frameworks
Users completed
439 completed
Tabs III
Build a fully accessible tabs component that has keyboard support according to ARIA specifications
Difficulty
Medium
Available frameworks
Users completed
274 completed
Progress Bars III
Build a list of progress bars that fill up gradually concurrently, up to a limit of 3
Difficulty
Medium
Available frameworks
Users completed
425 completed
Tic-tac-toe
Build a tic-tac-toe game that is playable by two players
Difficulty
Medium
Available frameworks
Users completed
739 completed
Birth Year Histogram
Build a widget that fetches birth year data from an API and plot it on a histogram
Difficulty
Medium
Available frameworks
Users completed
48 completed
Connect Four
Build a game for two players who take turns to drop colored discs from the top into a vertically suspended board/grid
Difficulty
Medium
Available frameworks
Users completed
41 completed
Image Carousel II
Build an image carousel that smoothly transitions between images
Difficulty
Medium
Available frameworks
Users completed
74 completed
Pixel Art
Build a pixel art drawing tool where users can paint pixels with selected colors
Difficulty
Medium
Available frameworks
Users completed
48 completed
Signup Form
Build a signup form that does validation on user details and submits to a back end API
Difficulty
Medium
Available frameworks
Users completed
704 completed
Stopwatch
Build a stopwatch widget that can measure how much time has passed
Difficulty
Medium
Available frameworks
Users completed
533 completed
Transfer List
Build a component that allows transferring of items between two lists
Difficulty
Medium
Available frameworks
Users completed
574 completed
Undoable Counter
Build a counter with a history of the values and ability to undo/redo actions
Difficulty
Medium
Available frameworks
Users completed
431 completed
Users Database
Build a UI to filter, create, update, and delete users
Difficulty
Medium
Available frameworks
Users completed
116 completed
Whack-A-Mole
Build a popular arcade game where players attempt to hit moles as they pop up from holes in a board
Difficulty
Medium
Available frameworks
Users completed
222 completed
Memory Game
Build a memory game where the player needs to match pairs of cards
Difficulty
Medium
Available frameworks
Users completed
255 completed
Auth Code Input
Build an auth code input component that allows users to enter a 6-digit authorization code
Difficulty
Hard
Available frameworks
Users completed
78 completed
Progress Bars IV
Build a list of progress bars that fill up gradually concurrently, up to a limit of 3 and allows for pausing and resuming
Difficulty
Hard
Available frameworks
Users completed
211 completed
Data Table III
Build a generalized data table with pagination and sorting features
Difficulty
Hard
Available frameworks
Users completed
42 completed
Modal Dialog IV
Build a fully-accessible modal dialog component that supports all required keyboard interactions
Difficulty
Hard
Available frameworks
Users completed
42 completed
Data Table IV
Build a generalized data table with pagination, sorting and filtering features
Difficulty
Hard
Available frameworks
Users completed
32 completed
Image Carousel III
Build an image carousel that smoothly transitions between images that has a minimal DOM footprint
Difficulty
Hard
Available frameworks
Users completed
35 completed
Nested Checkboxes
Build a nested checkboxes component with parent-child selection logic
Difficulty
Hard
Available frameworks
Users completed
38 completed
Selectable Cells
Build an interface where users can drag to select multiple cells within a grid
Difficulty
Hard
Available frameworks
Users completed
26 completed
Tic-tac-toe II
Build an N x N tic-tac-toe game that requires M consecutive marks to win
Difficulty
Hard
Available frameworks
Users completed
171 completed
Transfer List II
Build a component that allows transferring of items between two lists, bulk selection/unselection of items, and adding of new items
Difficulty
Hard
Available frameworks
Users completed
172 completed
Wordle
Build Wordle, the word-guessing game that took the world by storm
Difficulty
Hard
Available frameworks
Users completed
108 completed