Challenge Library
Coding Challenges
5,893 curated questions across every arena — browse by topic, then jump into a live 3-minute battle to put them to the test.
Filter by type
Filter by difficulty
Popular topics
447 challenges matching your filters
Clear topic filter- Code AnalysisIntermediate
Context re-render
frontendintermediate - Code AnalysisHard
CSS counters
frontendhard - Code AnalysisIntermediate
localStorage JSON
frontendintermediate - Code AnalysisBeginner
Destructuring default
frontendbeginner - Code AnalysisIntermediate
CSS @supports
frontendintermediate - Code AnalysisIntermediate
Optional chaining
frontendintermediate - Code AnalysisIntermediate
Nullish coalescing
frontendintermediate - Code AnalysisBeginner
Rest destructuring
frontendbeginner - Code AnalysisIntermediate
Animation fill mode
frontendintermediate - Code AnalysisIntermediate
Dynamic import type
frontendintermediate - Code AnalysisBeginner
CSS :not()
frontendbeginner - Code AnalysisIntermediate
Template literal nested
frontendintermediate - Code AnalysisIntermediate
findIndex not found
frontendintermediate - Code AnalysisIntermediate
Spread in call
frontendintermediate - Code AnalysisIntermediate
Default import
frontendintermediate - Code AnalysisIntermediate
Promise.all reject
frontendintermediate - Code AnalysisIntermediate
CSS min()
frontendintermediate - Code AnalysisHard
Reduce empty no init
frontendhard - Code AnalysisHard
useLayoutEffect
frontendhard - Code AnalysisHard
CSS env()
frontendhard - Code AnalysisBeginner
Array some
frontendbeginner - Code AnalysisBeginner
Array reduce sum
frontendbeginner - Code AnalysisBeginner
String split
frontendbeginner - Code AnalysisBeginner
Date.now type
frontendbeginner - Code AnalysisIntermediate
Number.isInteger
frontendintermediate - Code AnalysisIntermediate
Promise then chain
frontendintermediate - Code AnalysisBeginner
Array fill
frontendbeginner - Code AnalysisHard
Object.is zero
frontendhard - Code AnalysisBeginner
Array indexOf
frontendbeginner - Code AnalysisIntermediate
Semantic vs div
frontendintermediate - Code AnalysisBeginner
Label click behavior
frontendbeginner - Code AnalysisBeginner
Alt text fallback
frontendbeginner - Code AnalysisIntermediate
Missing viewport
frontendintermediate - Code AnalysisIntermediate
Table scope attribute
frontendintermediate - Code AnalysisBeginner
Required validation
frontendbeginner - Code AnalysisHard
Empty sandbox
frontendhard - Code AnalysisIntermediate
Picture source choice
frontendintermediate - Code AnalysisIntermediate
Dialog show
frontendintermediate - Code AnalysisIntermediate
Lazy load trigger
frontendintermediate - Multiple ChoiceBeginner
DOCTYPE
frontendbeginner - Multiple ChoiceBeginner
Semantic HTML — Landmarks
frontendbeginner - Multiple ChoiceBeginner
Alt attribute
frontendbeginner - Multiple ChoiceIntermediate
Form input types
frontendintermediate - Multiple ChoiceBeginner
Meta viewport
frontendbeginner - Multiple ChoiceBeginner
Form methods
frontendbeginner - Multiple ChoiceBeginner
Label element
frontendbeginner - Multiple ChoiceIntermediate
Table semantics
frontendintermediate - Multiple ChoiceBeginner
Heading hierarchy
frontendbeginner - Multiple ChoiceIntermediate
iframe sandbox
frontendintermediate - Multiple ChoiceIntermediate
Data attributes
frontendintermediate - Multiple ChoiceBeginner
HTML entities
frontendbeginner - Multiple ChoiceHard
Web components
frontendhard - Multiple ChoiceIntermediate
Template element
frontendintermediate - Multiple ChoiceIntermediate
Dialog element
frontendintermediate - Multiple ChoiceIntermediate
Picture element
frontendintermediate - Multiple ChoiceIntermediate
Native lazy loading
frontendintermediate - Multiple ChoiceIntermediate
ARIA basics
frontendintermediate - Multiple ChoiceBeginner
Required attribute
frontendbeginner - Multiple ChoiceIntermediate
Figure element
frontendintermediate - Multiple ChoiceIntermediate
Details/Summary
frontendintermediate
Practice now, dominate the arena
Every challenge here is drawn from the live Code Royale pool. Review a question, then head to the arena to answer under pressure against a real opponent — 3-minute matches, Elo ranking, and badge tiers on the line.