BFE
.dev
buy us
a coffee
EN
Practice
Explore
EN
TypeScript Puzzles
TypeScript is the most popular JavaScript alternative.
Sort
Difficulty
Solved status
Sort: most accepted
1. implement Partial<T>
TypeScript
easy
2380 accepted
2. implement Required<T>
TypeScript
easy
1597 accepted
3. implement Readonly<T>
TypeScript
easy
1418 accepted
4. implement Record<K, V>
TypeScript
easy
1377 accepted
5. implement Pick<T, K>
TypeScript
easy
1246 accepted
6. implement Omit<T, K>
TypeScript
easy
1049 accepted
7. implement Exclude<T, E>
TypeScript
easy
826 accepted
9. implement NonNullable<T>
TypeScript
easy
784 accepted
8. implement Extract<T, U>
TypeScript
easy
738 accepted
10. implement Parameters<T>
TypeScript
easy
717 accepted
12. implement ReturnType<T>
TypeScript
easy
647 accepted
11. implement ConstructorParameters<T>
TypeScript
easy
512 accepted
14. implement ThisParameterType<T>
TypeScript
easy
509 accepted
15. implement OmitThisParameter<T>
TypeScript
easy
479 accepted
16. implement FirstChar<T>
TypeScript
easy
469 accepted
13. implement InstanceType<T>
TypeScript
easy
466 accepted
19. implement FirstItem<T>
TypeScript
easy
423 accepted
18. implement TupleToUnion<T>
TypeScript
easy
423 accepted
17. implement LastChar<T>
TypeScript
easy
398 accepted
21. implement LastItem<T>
TypeScript
easy
383 accepted
23. implement LengthOfTuple<T>
TypeScript
easy
381 accepted
20: implement IsNever<T>
TypeScript
easy
365 accepted
25. implement UnwrapPromise<T>
TypeScript
easy
346 accepted
22. implement StringToTuple<T>
TypeScript
easy
310 accepted
26. implement ReverseTuple<T>
TypeScript
easy
300 accepted
31. implement Push<T, I>
TypeScript
easy
296 accepted
29. implement Shift<T>
TypeScript
easy
292 accepted
27. implement Flat<T>
TypeScript
easy
287 accepted
24. implement LengthOfString<T>
TypeScript
easy
286 accepted
30. implement IsAny<T>
TypeScript
easy
251 accepted
43. implement Trim<T>
TypeScript
easy
237 accepted
28. implement IsEmptyType<T>
TypeScript
easy
237 accepted
33. implement TupleToString<T>
TypeScript
easy
220 accepted
32. implement RepeatString<T, C>
TypeScript
easy
206 accepted
35. implement Filter<T, A>
TypeScript
easy
204 accepted
34. implement Repeat<T, C>
TypeScript
easy
183 accepted
36. implement LargerThan<A, B>
TypeScript
easy
170 accepted
38. implement Add<A, B>
TypeScript
easy
167 accepted
58. implement Diff<A, B>
TypeScript
easy
162 accepted
42. implement Equal<A, B>
TypeScript
easy
160 accepted
37. implement SmallerThan<A, B>
TypeScript
easy
154 accepted
41. implement FindIndex<T, E>
TypeScript
easy
151 accepted
39. implement ToNumber<T>
TypeScript
easy
149 accepted
60. implement UndefinedToNull<T>
TypeScript
easy
147 accepted
40. implement UnionToIntersection<T>
TypeScript
easy
132 accepted
59. implement MapStringUnionToObjectUnion<U>
TypeScript
easy
109 accepted
44. implement ReplaceAll<S, F, T>
TypeScript
easy
101 accepted
61. implement Prefix<T, P>
TypeScript
easy
100 accepted
46. implement Subtract<A, B>
TypeScript
easy
84 accepted
49. asserts never
TypeScript
easy
77 accepted
45. implement Slice<A, S, E>
TypeScript
easy
77 accepted
51. implement Capitalize<T>
TypeScript
easy
72 accepted
57. implement ObjectPaths<O>
TypeScript
easy
65 accepted
54. Implement CamelCase<S>
TypeScript
easy
65 accepted
55. implement StringToNumber<S>
TypeScript
few challengers
61 accepted
52. implement Split<S, D>
TypeScript
few challengers
61 accepted
56. implement Abs<N>
TypeScript
easy
60 accepted
48. implement Divide<A, B>
TypeScript
easy
58 accepted
47. implement Multiply<A, B>
TypeScript
few challengers
56 accepted
53. Implement SnakeCase<S>
TypeScript
few challengers
47 accepted
50. implement Sort<T>
TypeScript
few challengers
32 accepted
62. implement Unique<T extends any[]>
TypeScript
few challengers
18 accepted