Coding Challenges

150 hands-on challenges across 7 categories

Filters

React Native
0/53 completed
React
0/15 completed
JS ES5
0/28 completed
JS ES6+
0/22 completed
Engineering Practices
0/17 completed
Dev Processes
0/6 completed
Extra
0/9 completed
easyReact Native

useState counter with validation

5 minCode
easyReact Native

useEffect cleanup

5 minCode
easyReact Native

FlatList with pull-to-refresh

10 minCode
easyReact Native

TextInput controlled form

5 minCode
mediumReact Native

useReducer for complex state

10 minCode
mediumReact Native

React Navigation stack setup

10 minCode
mediumReact Native

Tab navigator with badges

10 minCode
hardReact Native

Navigation deep link handling

15 minCode
mediumReact Native

Navigation params typing

10 minCode
mediumReact Native

Screen focus listener

10 minCode
easyReact Native

useContext theme provider

5 minCode
mediumReact Native

Zustand store with persist

10 minCode
mediumReact Native

Redux Toolkit slice

10 minCode
mediumReact Native

React Query fetch and cache

10 minCode
hardReact Native

Optimistic updates with React Query

15 minCode
mediumReact Native

React.memo and useMemo

10 minCode
mediumReact Native

FlatList performance optimization

10 minCode
mediumReact Native

Image caching and preloading

10 minCode
easyReact Native

Memoize callbacks with useCallback

5 minCode
hardReact Native

InteractionManager for heavy ops

10 minCode
mediumReact Native

Camera roll permission request

10 minCode
mediumReact Native

expo-notifications local notification

10 minCode
easyReact Native

Native module bridge (Platform.select)

5 minCode
easyReact Native

Linking.openURL deep link

5 minCode
mediumReact Native

Accelerometer sensor subscription

10 minCode
easyReact Native

Flexbox layout: centered card

5 minCode
easyReact Native

Dynamic Styles with useWindowDimensions

5 minCode
easyReact Native

SafeAreaView for notched devices

5 minCode
easyReact Native

Shadow and elevation styles

5 minCode
easyReact Native

StyleSheet.create pattern

5 minCode
mediumReact Native

AsyncStorage CRUD

10 minCode
mediumReact Native

SQLite database setup (expo-sqlite)

10 minCode
mediumReact Native

File system read/write (expo-file-system)

10 minCode
easyReact Native

NetInfo connectivity check

5 minCode
easyReact Native

Clipboard copy/paste

5 minCode
mediumReact Native

Animated.Value fade-in

10 minCode
hardReact Native

Animated event with PanResponder

15 minCode
mediumReact Native

LayoutAnimation for list insert

10 minCode
easyReact

Conditional rendering

5 minCode
easyReact

List rendering with keys

5 minCode
mediumReact

Composition vs inheritance

10 minCode
mediumReact

Higher-Order Component pattern

10 minCode
mediumReact

Custom useDebounce hook

10 minCode
mediumReact

Custom useLocalStorage hook

10 minCode
easyReact

useRef for DOM access

5 minCode
mediumReact

Error boundary component

10 minCode
mediumReact

Profiling with React.memo

10 minCode
mediumReact

Virtualization with react-window

10 minCode
mediumReact

Suspense with React.lazy

10 minCode
hardReact

useTransition for pending state

10 minCode
easyJS ES5

Closure counter factory

5 minCode
mediumJS ES5

Module pattern (IIFE)

5 minCode
mediumJS ES5

Function.prototype.bind

5 minCode
mediumJS ES5

Call and apply

5 minCode
mediumJS ES5

Hoisting behavior

5 minCode
mediumJS ES5

Constructor function and new

5 minCode
mediumJS ES5

Prototype chain lookup

5 minCode
easyJS ES5

hasOwnProperty vs in

5 minCode
mediumJS ES5

Array.map manually

10 minCode
mediumJS ES5

Array.filter manually

10 minCode
hardJS ES5

Array.reduce manually

15 minCode
easyJS ES5

typeof vs instanceof

5 minCode
easyJS ES6+

Promise chain

5 minCode
mediumJS ES6+

Promise.all for parallel requests

5 minCode
mediumJS ES6+

Async/await error handling

5 minCode
hardJS ES6+

Async generator with for-await-of

10 minCode
easyJS ES6+

Destructuring and default params

5 minCode
easyJS ES6+

Spread and rest operators

5 minCode
mediumJS ES6+

Arrow functions and lexical this

5 minCode
mediumJS ES6+

Map, filter, reduce chaining

10 minCode
easyEngineering Practices

Jest test — describe/it/expect

5 minCode
mediumEngineering Practices

Testing async code

5 minCode
mediumEngineering Practices

Mock functions with Jest

10 minCode
mediumEngineering Practices

Testing React Native components

10 minCode
mediumEngineering Practices

Snapshot testing

5 minCode
easyEngineering Practices

Test coverage thresholds

5 minCode
easyEngineering Practices

Console.log debugging pattern

5 minCode
mediumEngineering Practices

React DevTools profiler

10 minCode
mediumEngineering Practices

Flipper network inspector

10 minCode
mediumEngineering Practices

Error logging service

10 minCode
mediumEngineering Practices

React Native performance monitor

10 minCode
mediumEngineering Practices

DRY — extract reusable hook

10 minCode
mediumEngineering Practices

Single Responsibility: component splitting

10 minCode
hardEngineering Practices

Custom ESLint rule idea

10 minCode
hardEngineering Practices

Git bisect scenario

10 minCode
easyEngineering Practices

Code review checklist

5 minCode
mediumDev Processes

EAS Build workflow

5 minCode
mediumDev Processes

EAS Update channel strategy

5 minCode
hardDev Processes

CI/CD with GitHub Actions for RN

15 minCode
mediumDev Processes

Code review simulation

10 minCode
easyDev Processes

Agile estimation (story points)

5 minCode
easyExtra

TypeScript generics — identity function

5 minCode
mediumExtra

TypeScript unions and narrowing

10 minCode
mediumExtra

React Native accessibility

10 minCode
mediumExtra

i18n with expo-localization

10 minCode
mediumExtra

GraphQL query with Apollo Client

10 minCode
hardExtra

WebSocket connection hook

15 minCode
hardExtra

Gesture handler swipeable row

15 minCode
hardExtra

Reanimated shared value animation

15 minCode
hardExtra

End-to-end test with Detox

15 minCode
easyJS ES6+

Isograma (no repeated letters)

5 minCode
easyJS ES6+

Letras por números (alphabet index)

5 minCode
easyJS ES5

String ends with (no built-in)

5 minCode
mediumJS ES6+

Elementos pares (even-count elements)

10 minCode
easyJS ES6+

Transformador (restructure object)

5 minCode
mediumJS ES5

Ceros al final (move zeros)

5 minCode
mediumJS ES6+

Validar paréntesis (balanced)

5 minCode
mediumJS ES5

Encontrar al impar (odd count)

5 minCode
easyJS ES6+

Gira sarbalap (reverse long words)

5 minCode
easyJS ES6+

Marquesina (marquee rotation)

5 minCode
mediumJS ES6+

Ordenar emociones (sort emoticons)

10 minCode
mediumJS ES5

Contar duplicados (count dupes)

5 minCode
easyJS ES6+

Contar lenguajes (count languages)

5 minCode
mediumJS ES5

Encontrar al aislado (find outlier)

5 minCode
hardJS ES5

LIS (longest increasing subsequence)

15 minCode
hardJS ES5

Urinales libres (free urinals)

10 minCode
mediumJS ES5

Carrito (shopping cart function)

10 minCode
mediumJS ES6+

Palabrador (word overlapping)

10 minCode
easyJS ES6+

Anagramas (anagram check)

5 minCode
easyJS ES5

Conteo de caracteres

5 minCode
easyJS ES5

Duplicados en array

5 minCode
easyJS ES5

Suma de rangos

5 minCode
easyJS ES5

Números perdidos (missing numbers)

5 minCode
easyJS ES5

Es letra (is single letter)

5 minCode
mediumJS ES6+

Palíndromos (rearrange to palindrome)

10 minCode
mediumReact Native

User Directory with FlatList

15 minCode
mediumReact Native

Product Search with Filters

15 minCode
mediumReact Native

Grocery List (CRUD with persistence)

15 minCode
mediumReact Native

Pokemon Store (cart with limits)

15 minCode
mediumReact Native

Shopping Cart with Context

15 minCode
hardReact Native

Wordle (word guessing game)

20 minCode
hardReact Native

Minesweeper Grid (Booscaminas)

20 minCode
mediumReact Native

Tic-Tac-Toe (Ta-Te-Ti)

15 minCode
mediumReact Native

Symmetrical Grid (Grilla Simétrica)

10 minCode
mediumReact Native

Word Guessing Game (Adivinar Pokemon)

15 minCode
mediumReact Native

Reaction Game (Juego de Reflejos)

15 minCode
mediumReact Native

Stroop Color Game (Juego de Colores)

15 minCode
hardReact Native

G-Counter CRDT for offline sync

15 minCode
mediumJS ES6+

Debounce with leading edge and cancel

15 minCode
mediumJS ES5

Predict the event-loop order

10 minCode
hardJS ES5

deepEqual from scratch

20 minCode
hardJS ES6+

LRU cache with Map

20 minCode
mediumJS ES5

curry and compose

15 minCode
mediumReact

Undo/redo reducer

15 minCode
mediumReact

Normalized entities reducer

15 minCode
hardReact

createSelector with memoization

20 minCode
mediumReact Native

FlatList windowing math

15 minCode
mediumReact Native

Worklet-style interpolate and clamp

15 minCode
mediumEngineering Practices

Exponential backoff with jitter

15 minCode
mediumDev Processes

OTA update gate (runtimeVersion)

15 minCode