2020-07-31 17:50:09 +08:00
2020-07-31 02:43:44 +08:00
2020-07-28 18:09:56 +08:00
2020-07-31 17:50:09 +08:00
2020-07-28 03:27:37 +08:00
2020-07-31 17:50:09 +08:00
2020-07-31 17:50:09 +08:00
2020-07-29 16:27:49 +08:00
2020-07-24 01:16:24 +08:00
2020-07-24 13:51:39 +08:00
2020-07-30 18:21:13 +08:00
2020-07-31 02:35:39 +08:00
2020-07-31 02:35:39 +08:00
2020-07-31 02:35:39 +08:00
2020-07-31 17:50:09 +08:00
2020-07-24 16:04:53 +08:00
2020-07-24 13:51:39 +08:00

Collection of TypeScript type challenges



English | 简体中文

Intro

by the power of TypeScript's well-known Turing Completed type system

High quality types can help with projects' maintainability and avoiding bugs. There are a bunch of awesome type utilities libraries may boosting your works on types, like ts-toolbelt, utility-types, SimplyTyped, etc. We took a lot of inspiration from them too!

This project is aim to make you better understand how the type system works, writing your own utilities, or just having fun with the challenges. We are also trying to form a community that you can ask and answer questions you have faced in realworld - they may become part the challenges as well!

Challenges

Click the following badges to see detail of the challenges!


13・Hello World


4・Pick<T, K> 7・Readonly<T> 11・Tuple to Object 14・First of Array 18・Length of Tuple


2・Get Return Type 3・Omit<T, K> 8・Readonly 2 9・Deep Readonly 10・Tuple to Union 12・Chainable Options 15・Last of Array 16・Pop


6・Simple Vue 17・Currying 1


5・Get Readonly Keys

By Tags
#4.014・First of Array 15・Last of Array 16・Pop 17・Currying 1
#application12・Chainable Options 6・Simple Vue
#array14・First of Array 15・Last of Array 16・Pop 17・Currying 1
#built-in4・Pick<T, K> 7・Readonly<T> 2・Get Return Type 3・Omit<T, K>
#deep9・Deep Readonly
#infer2・Get Return Type 10・Tuple to Union
#object-keys7・Readonly<T> 8・Readonly 2 9・Deep Readonly 5・Get Readonly Keys
#readonly7・Readonly<T> 8・Readonly 2 9・Deep Readonly
#this6・Simple Vue
#tuple18・Length of Tuple 10・Tuple to Union
#union4・Pick<T, K> 3・Omit<T, K> 10・Tuple to Union
#utils5・Get Readonly Keys

Official

Articles

TODO

How to Contribute

There are several ways you can contribute to this project

  • Share your answers / solutions
  • Propose new challenges
  • Add more test cases to the existing challenges
  • Provide learning resources or ideas of how to solve challenges
  • Share the problems you have faced in realworld projects, regardless you having the solution or not - the community would help you as well.
  • Help with others by discussion in issues

Just open an issue and choose the cosponsing template. Thanks!

Thanks

Inspired by

Contributors

TODO

License

MIT

Description
Collection of TypeScript type challenges with online judge
Readme MIT 9.4 MiB
Languages
TypeScript 98%
HTML 1.1%
CSS 0.5%
JavaScript 0.3%