UI / Frameworks interview questions
107 questions in UI / Frameworks, from warm-ups to staff-level problems — solved in a real workspace with instant test feedback.
107 questions
- EASY
Accordion
Build an accordion component with stacked sections whose content panels expand and collapse on click.
20 minUI / FrameworksGoogle · Amazon · MetaAngularReactHTML / CSS / JSVue - EASY
Avatar Group
Build a row of overlapping avatars that collapses the overflow into a plus-N badge.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Basic Autocomplete
Build an autocomplete input that filters a static list and lets you pick a suggestion.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Breadcrumbs
Build a breadcrumb trail from a path array, separating crumbs and marking the current page.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Character Counter Textarea
Build a textarea with a live character counter that warns as it nears a maximum length.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Color Swatch Picker
Build a swatch color picker where clicking a swatch selects it and previews the chosen color.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Contact Form
Build a contact form that posts the user's name, email, and message to a backend endpoint.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Copy to Clipboard Button
Build a button that copies text to the clipboard and shows a transient copied confirmation.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Countdown Timer
Build a countdown timer that ticks down from a start time and can start, pause, and reset.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Counter
Build a counter component that increments a displayed number each time a button is clicked.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
FAQ Disclosure
Build a list of FAQ questions that each expand to reveal an answer on click.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Flight Booker
Build a small form that books either a one-way or return flight, with validation tying the two date fields together.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Generate Table
Build a component that renders a table of sequential numbers given a row count and a column count.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Holy Grail
Build the classic holy grail page layout with a header, footer, and three columns of content.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Like Button
Build a Like button that toggles between liked and unliked states with matching visual feedback.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Modal Dialog
Build a reusable modal dialog component that you can open from a trigger and close with a button.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Mortgage Calculator
Build a calculator that computes the monthly payment for a loan based on principal, rate, and term inputs.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Pagination UI
Build pagination controls with previous/next and numbered pages that report the current page.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Password Strength Meter
Build a password field with a live strength meter that scores the input as you type.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Progress Bar
Build a progress bar component that visualizes the percentage completion of an operation.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Progress Bars
Build a component that renders a list of progress bars which animate from empty to full as they mount.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Segmented Control
Build a segmented control where clicking a segment selects it and highlights the active option.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Temperature Converter
Build a widget that converts between Celsius and Fahrenheit, updating either field as the other changes.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Toast Notification
Build a toast that appears on trigger and auto-dismisses after a few seconds, with manual close.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Toggle Switch
Build an on/off toggle switch that flips state on click and slides its knob to reflect it.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Tooltip
Build a tooltip that shows on hover/focus of a trigger and hides on leave/blur.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Traffic Light
Build a traffic light that cycles green to yellow to red on a timer and loops indefinitely.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - EASY
Tweet
Build a static tweet component that mirrors the layout of a single post on Twitter.
15 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Accordion II
Build an accordion component with the correct ARIA roles, states, and properties for screen readers.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Analog Clock
Build an analog clock whose hour, minute, and second hands move smoothly to reflect the current time.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Async Autocomplete
Build an autocomplete that debounces typing, fetches matching results from an API, and handles loading and stale responses.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Autoplay Carousel
Build an image carousel that auto-advances on a timer, pauses on hover, and has manual controls.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Birth Year Histogram
Build a widget that fetches birth year data from an API and renders it as a histogram of bucketed counts.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Combobox
PREMIUMBuild an editable combobox that filters options as you type and supports full keyboard selection.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Command Palette
PREMIUMBuild a keyboard-driven command palette with fuzzy search and arrow-key navigation.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Connect Four
Build a two-player Connect Four game where discs fall to the lowest empty slot and four-in-a-row wins.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Currency Converter
Build a currency converter with two linked amount fields that recompute from an exchange rate.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Data Table
Build a users data table that paginates rows with page-size and page-navigation controls.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Data Table II
Build a users data table that lets you sort by any column in ascending or descending order.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Date Picker
PREMIUMBuild a calendar date picker that renders a month grid, navigates between months, and selects a day.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Dice Roller
Build a dice roller that lets you pick a count of six-sided dice, roll them, and display the resulting faces.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Digital Clock
Build a 7-segment style digital clock that updates to display the current time.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Dropdown Menu
Build an accessible dropdown menu that opens on click, closes on outside-click and Escape, and supports arrow-key navigation.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Emoji Picker
Build an emoji picker with category tabs and a search filter that inserts the chosen emoji.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
File Explorer
Build a file explorer that renders a nested folder hierarchy and lets you expand and collapse directories.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
File Explorer II
Build a file explorer that exposes the correct ARIA tree roles, states, and properties for assistive tech.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
File Explorer III
Build a file explorer that renders the tree as a flat DOM list while preserving nested visual structure.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Grid Lights
Build a grid of cells that light up on click and then deactivate one by one in the reverse order they were activated.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Heatmap Calendar
Build a contribution-style heatmap calendar that colors each day cell by its activity value.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Image Carousel
Build an image carousel that lets you page through a sequence of images with previous and next controls.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Image Carousel II
Build an image carousel with smooth slide transitions between images.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Infinite Scroll List
Build a list that loads more items as the user scrolls near the bottom using an observer.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Job Board
Build a job board that fetches and renders recent Hacker News job postings with paginated loading.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Kanban Board
PREMIUMBuild a three-column board where cards drag between columns and each column's count updates.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Memory Game
Build a memory card-matching game where players flip cards to find matching pairs.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Modal Dialog II
Build a modal dialog with the correct ARIA roles, states, and properties for assistive technology.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Modal Dialog III
Build a modal dialog that closes via the close button, backdrop click, and the Escape key.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Multi-Select
Build a multi-select where chosen options become removable chips and the rest stay in the list.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Multi-Step Form
Build a wizard form with next/back navigation, per-step validation, and a progress indicator.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Nested Comments
PREMIUMBuild a threaded comments tree where each comment can be replied to and collapsed recursively.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Notification Center
Build a notification center with an unread badge, mark-as-read, and dismiss.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
OTP Input
Build a one-time-code input of separate boxes with auto-advance, backspace, and paste handling.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Pixel Art
Build a pixel art editor where you pick a color from a palette and paint individual cells on a grid canvas.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Progress Bars II
Build a list of progress bars that fill in sequence, each one starting only after the previous bar finishes.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Progress Bars III
Build a list of progress bars that fill concurrently with at most three running at the same time.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Range Slider
Build a dual-handle range slider that picks a min and max value by dragging each handle.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Resizable Split Pane
Build two panes split by a draggable divider that resizes them within min and max bounds.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Shopping Cart
Build a cart where quantity changes update line totals and a grand total live.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Signup Form
Build a signup form that validates user details on submit and posts them to a back-end API.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Snake Game
PREMIUMBuild the classic snake game on a grid with keyboard control, growth on eating, and game over.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Sortable List
PREMIUMBuild a list whose items reorder by dragging, with a live drop indicator.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Star Rating
Build an interactive star rating with hover preview and half-star support.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Star Rating
Build a star rating component where users click a star to set the rating shown by filled icons.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Stopwatch
Build a stopwatch widget that measures elapsed time with start, stop, and reset controls.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Tabs
Build a tabs component that shows one panel at a time based on the currently selected tab.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Tabs II
Build a tabs component with the correct ARIA roles, states, and properties for assistive tech.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Tic-tac-toe
Build a two-player tic-tac-toe game that detects wins and draws on a 3x3 board.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Todo List
Build a Todo List component with add and delete actions, with focus on functionality over styling.
25 minUI / FrameworksGoogle · Meta · MicrosoftAngularReactHTML / CSS / JSVue - MEDIUM
Transfer List
Build a component that moves selected items back and forth between two side-by-side lists.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Undoable Counter
Build a counter that keeps a history of values so you can undo and redo each change.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Users Database
Build a CRUD interface to list, filter, create, edit, and delete users backed by local state.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - MEDIUM
Whack-A-Mole
Build the arcade game where moles randomly appear in a grid and players click them to score.
25 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Accordion III
PREMIUMBuild a fully accessible accordion with keyboard navigation per the ARIA authoring practices guide.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Auth Code Input
PREMIUMBuild a six-cell auth code input that handles typing, paste, backspace, and arrow-key navigation across fields.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Autocomplete III
PREMIUMBuild a production autocomplete with async fetch, debounce, keyboard navigation, caching, and match highlighting.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Calendar Scheduler
PREMIUMBuild a week-view scheduler where events render in time slots and can be added by clicking a slot.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Data Table III
PREMIUMBuild a generic, reusable data table that supports column-driven sorting and pagination for any dataset.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Data Table IV
PREMIUMBuild a generalized data table component that supports pagination, column sorting, and per-column filtering.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Data Table V
PREMIUMBuild a data table with sortable columns, pagination, and row selection over a dataset.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Gantt Chart
PREMIUMBuild a Gantt chart that renders tasks as bars positioned across a timeline by start and duration.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Image Carousel III
PREMIUMBuild an image carousel that smoothly transitions between images while keeping the DOM footprint minimal.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Image Cropper
PREMIUMBuild an image cropper with a draggable, resizable crop region over an image.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Lazy Tree View
PREMIUMBuild a collapsible tree that lazily loads a node's children the first time it is expanded.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Minesweeper
PREMIUMBuild Minesweeper with flood-fill reveal, flagging, and win/lose detection.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Modal Dialog IV
PREMIUMBuild a fully accessible modal dialog with focus trapping, focus restoration, and keyboard support.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Nested Checkboxes
PREMIUMBuild a nested checkbox tree where parent state reflects its children and toggling a parent cascades down.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Progress Bars IV
PREMIUMBuild progress bars that fill concurrently up to three at a time, and let the user pause and resume each one.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Realtime Search with Cache
PREMIUMBuild a search box that caches results per query and dedupes in-flight requests.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Rich Text Editor
PREMIUMBuild a contenteditable rich-text editor with bold/italic/list formatting and a live toolbar state.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Selectable Cells
PREMIUMBuild a grid where you click and drag across cells to select a rectangular range of them.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Spreadsheet Grid
PREMIUMBuild a grid of cells with formula evaluation and dependent-cell recalculation.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Tabs III
PREMIUMBuild a fully accessible tabs component with arrow-key navigation per the ARIA authoring guide.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Tetris
PREMIUMBuild Tetris with falling tetrominoes, rotation, line clears, and scoring.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Tic-tac-toe II
PREMIUMBuild a generalized tic-tac-toe game on an N x N board where M consecutive marks wins.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Transfer List II
PREMIUMBuild a transfer list with bulk select, deselect, and the ability to add new items to either side.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Virtualized List
PREMIUMBuild a windowed list that renders only the visible rows of a large dataset for smooth scrolling.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue - HARD
Wordle
PREMIUMBuild the Wordle word-guessing game with row-by-row guesses and per-letter color feedback.
40 minUI / FrameworksAngularReactHTML / CSS / JSVue