Formatting interview questions
Practice 19 questions on formatting. Each runs in a real in-browser editor with Jest tests and a worked, diagram-backed solution.
19 questions
- UI / FrameworksUI challenge4 variants
Countdown Timer
EASYBuild a countdown timer that ticks down from a start time and can start, pause, and reset.
15 minPractice - JavaScriptCoding exercise
List Format
EASYImplement a function that joins an array of strings into a grammatical list with commas and a conjunction.
15 minDropboxPractice - JavaScriptCoding exercise
Text Search
EASYImplement a function that wraps occurrences of a search term within a string in highlight markup.
15 minAnthropic · Google · Meta +1Practice - JavaScriptCoding exercise
classNames
MEDIUMImplement a utility that conditionally joins class name arguments into a single space-separated string.
25 minMetaPractice - UI / FrameworksUI challenge4 variants
Currency Converter
MEDIUMBuild a currency converter with two linked amount fields that recompute from an exchange rate.
25 minPractice - UI / FrameworksUI challenge4 variants
Digital Clock
MEDIUMBuild a 7-segment style digital clock that updates to display the current time.
25 minLyftPractice - JavaScriptCoding exercise
HTML Serializer
MEDIUMImplement a function that serializes a tree-shaped object into a pretty-printed HTML string with indentation.
25 minTikTokPractice - JavaScriptCoding exercise
i18n Engine
MEDIUMBuild a translation engine with nested key lookup, variable interpolation, pluralization, and locale fallback.
25 minPremium questionPractice - JavaScriptCoding exercise
JSON.stringify
MEDIUMImplement a function that converts a JavaScript value into its JSON string representation.
25 minAmazon · Google · Meta +4Practice - JavaScriptCoding exercise
Round to Precision
MEDIUMRound, floor, and ceil a number to N decimal places without the classic floating-point drift — 1.005 must round to 1.01, not 1.00.
25 minPremium questionPractice - UI / FrameworksUI challenge4 variants
Shopping Cart
MEDIUMBuild a cart where quantity changes update line totals and a grand total live.
25 minPractice - UI / FrameworksUI challenge4 variants
Stopwatch
MEDIUMBuild a stopwatch widget that measures elapsed time with start, stop, and reset controls.
25 minCisco · Lyft · Shopify +2Practice - JavaScriptCoding exercise
Template Engine
MEDIUMImplement a template renderer that substitutes Mustache-style placeholders with values from a data object.
25 minPremium questionPractice - JavaScriptCoding exercise
Thousands Separator
MEDIUMGroup a number's integer digits with separators — 1234567 to 1,234,567 — handling decimals, negatives, and a custom separator.
25 minPremium questionPractice - JavaScriptCoding exercise
Truncate String
MEDIUMImplement lodash truncate — cut a string to a maximum length, append an ellipsis, and optionally break on the last word boundary before the limit.
25 minPremium questionPractice - JavaScriptCoding exercise
classNames II
HARDExtend the classNames utility to dedupe class names and resolve function arguments lazily.
40 minPractice - JavaScriptCoding exercise
Integer to English Words
HARDSpell out a non-negative integer in English words — break it into groups of three digits and name each group with its scale word.
40 minPremium questionPractice - JavaScriptCoding exercise
JSON.stringify II
HARDImplement JSON.stringify with full spec support including replacer, indentation, and circular reference detection.
40 minAmazon · Google · Netflix +1Practice - JavaScriptCoding exercise
Rich Text to HTML
HARDImplement a function that converts a list of styled text ranges into a canonical, properly nested HTML string.
40 minPremium questionMetaPractice