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
1,575 challenges matching your filters
- Code AnalysisHard
Transform performance
frontendhard - Code AnalysisIntermediate
Filter order
frontendintermediate - Code AnalysisHard
Layer priority
frontendhard - Code AnalysisIntermediate
::after content
frontendintermediate - Code AnalysisHard
Opacity click
frontendhard - Code AnalysisHard
will-change hint
frontendhard - Code AnalysisBeginner
Array every
frontendbeginner - Code AnalysisBeginner
Set uniqueness
frontendbeginner - Code AnalysisHard
Object.keys order
frontendhard - Code AnalysisIntermediate
FlatMap result
frontendintermediate - Code AnalysisBeginner
padStart
frontendbeginner - Code AnalysisIntermediate
Object.entries loop
frontendintermediate - Code AnalysisIntermediate
Array slice negative
frontendintermediate - Code AnalysisIntermediate
Promise finally
frontendintermediate - Code AnalysisBeginner
String includes
frontendbeginner - Code AnalysisIntermediate
Array sort default
frontendintermediate - Code AnalysisIntermediate
Object.freeze mutation
frontendintermediate - Code AnalysisBeginner
Set has
frontendbeginner - Code AnalysisIntermediate
Array.at negative
frontendintermediate - Code AnalysisHard
Promise.resolve unwrap
frontendhard - Code AnalysisIntermediate
String replace global
frontendintermediate - Code AnalysisBeginner
Array concat
frontendbeginner - Code AnalysisBeginner
String trim
frontendbeginner - Code AnalysisBeginner
Array join default
frontendbeginner - Code AnalysisBeginner
Array reverse mutation
frontendbeginner - Code AnalysisBeginner
Array shift return
frontendbeginner - Code AnalysisHard
Object.seal delete
frontendhard - Code AnalysisIntermediate
Array flat depth
frontendintermediate - Code AnalysisHard
String substring
frontendhard - Code AnalysisBeginner
Math.random range
frontendbeginner - Code AnalysisIntermediate
Array unshift return
frontendintermediate - Code AnalysisIntermediate
String match no result
frontendintermediate - Code AnalysisIntermediate
Object.is NaN
frontendintermediate - Code AnalysisHard
String codePointAt
frontendhard - Code AnalysisIntermediate
Re-render trigger
frontendintermediate - Code AnalysisIntermediate
Grid implicit rows
frontendintermediate - Code AnalysisIntermediate
Event currentTarget
frontendintermediate - Code AnalysisIntermediate
useEffect cleanup
frontendintermediate - Code AnalysisIntermediate
CSS specificity tie
frontendintermediate - Code AnalysisIntermediate
useMemo dependency
frontendintermediate - Code AnalysisIntermediate
flex-basis default
frontendintermediate - Code AnalysisBeginner
Array map return
frontendbeginner - Code AnalysisIntermediate
Transition trigger
frontendintermediate - 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
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.