Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/heonys/type-challenges
Cloned from https://tsch.js.org
https://github.com/heonys/type-challenges
challenge typescript
Last synced: 6 days ago
JSON representation
Cloned from https://tsch.js.org
- Host: GitHub
- URL: https://github.com/heonys/type-challenges
- Owner: Heonys
- License: mit
- Created: 2024-02-01T05:37:09.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-10-16T14:36:00.000Z (about 1 month ago)
- Last Synced: 2024-10-18T11:37:44.762Z (about 1 month ago)
- Topics: challenge, typescript
- Language: TypeScript
- Homepage: https://tsch.js.org
- Size: 749 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.ja.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
TypeScript 型の課題集## はじめに
TypeScript のチューリング完全な型システムの力で高品質な型は潜在的なバグを回避しつつ、プロジェクトの保守性を向上させるのに役立ちます。
TypeScriptには [ts-toolbelt](https://github.com/millsp/ts-toolbelt), [utility-types](https://github.com/piotrwitek/utility-types), [simplytyped](https://github.com/andnp/simplytyped) など優れた型ユーティリティライブラリがあり、私たちは多くの後押しを得ているはずです。このプロジェクトは、型システムがどのように動作するのかを理解したり、独自の型ユーティリティを書いたり、課題へのチャレンジを楽しむことをサポートします。また、実際の業務で直面した問題を質問したり、その答えを得られるコミュニティを作りたいと考えています。 - そこでの問題が課題集に追加されるかもしれません!
## 課題集
> 以下のバッジをクリックすると、課題の詳細が表示されます。
お試し (1)
初級 (13)
-
4・Pick -
7・Readonly -
11・Tuple to Object -
14・First of Array -
18・Length of Tuple -
43・Exclude -
189・Awaited -
268・If -
533・Concat -
898・Includes -
3057・Push -
3060・Unshift -
3312・Parameters
中級 (97)
-
2・Get Return Type -
3・Omit -
8・Readonly 2 -
9・Deep Readonly -
10・Tuple to Union -
12・Chainable Options -
15・Last of Array -
16・Pop -
20・Promise.all -
62・Type Lookup -
106・Trim Left -
108・Trim -
110・Capitalize -
116・Replace -
119・ReplaceAll -
191・Append Argument -
296・Permutation -
298・Length of String -
459・Flatten -
527・Append to object -
529・Absolute -
531・String to Union -
599・Merge -
612・KebabCase -
645・Diff -
949・AnyOf -
1042・IsNever -
1097・IsUnion -
1130・ReplaceKeys -
1367・Remove Index Signature -
1978・Percentage Parser -
2070・Drop Char -
2257・MinusOne -
2595・PickByType -
2688・StartsWith -
2693・EndsWith -
2757・PartialByKeys -
2759・RequiredByKeys -
2793・Mutable -
2852・OmitByType -
2946・ObjectEntries -
3062・Shift -
3188・Tuple to Nested Object -
3192・Reverse -
3196・Flip Arguments -
3243・FlattenDepth -
3326・BEM style string -
3376・InorderTraversal -
4179・Flip -
4182・Fibonacci Sequence -
4260・文字の組み合わせ -
4425・Greater Than -
4471・Zip -
4484・IsTuple -
4499・Chunk -
4518・Fill -
4803・Trim Right -
5117・Without -
5140・Trunc -
5153・IndexOf -
5310・Join -
5317・LastIndexOf -
5360・Unique -
5821・MapTypes -
7544・Construct Tuple -
8640・Number Range -
8767・Combination -
8987・Subsequence -
9142・CheckRepeatedChars -
9286・FirstUniqueCharIndex -
9616・Parse URL Params -
9896・GetMiddleElement -
9898・Appear only once -
9989・Count Element Number To Object -
10969・Integer -
16259・ToPrimitive -
17973・DeepMutable -
18142・All -
18220・Filter -
21104・FindAll -
21106・Combination key type -
21220・Permutations of Tuple -
25170・Replace First -
25270・Transpose -
26401・JSON Schema to TypeScript -
27133・Square -
27152・Triangular number -
27862・CartesianProduct -
27932・MergeAll -
27958・CheckRepeatedTuple -
28333・Public Type -
29650・ExtractToObject -
29785・Deep Omit -
30301・IsOdd -
30430・Tower of hanoi -
30958・Pascal's triangle -
30970・確定した文字列リテラル
上級 (47)
-
6・Simple Vue -
17・Currying 1 -
55・Union to Intersection -
57・Get Required -
59・Get Optional -
89・Required Keys -
90・Optional Keys -
112・Capitalize Words -
114・CamelCase -
147・C-printf Parser -
213・Vue Basic Props -
223・IsAny -
270・Typed Get -
300・String to Number -
399・Tuple Filter -
472・Tuple to Enum Object -
545・printf -
553・Deep object to unique -
651・Length of String 2 -
730・Union to Tuple -
847・String Join -
956・DeepPick -
1290・Pinia -
1383・Camelize -
2059・Drop String -
2822・Split -
2828・ClassPublicKeys -
2857・IsRequiredKey -
2949・ObjectFromEntries -
4037・IsPalindrome -
5181・Mutable Keys -
5423・Intersection -
6141・Binary to Decimal -
7258・Object Key Paths -
8804・Two Sum -
9155・ValidDate -
9160・Assign -
9384・Maximum -
9775・Capitalize Nest Object Keys -
13580・Replace Union -
14080・FizzBuzz -
14188・Run-length encoding -
15260・Tree path array -
19458・SnakeCase -
25747・IsNegativeNumber -
28143・OptionalUndefined -
30575・BitwiseXOR
最上級 (15)
-
5・Get Readonly Keys -
151・Query String Parser -
216・Slice -
274・Integers Comparator -
462・Currying 2 -
476・Sum -
517・Multiply -
697・Tag -
734・Inclusive Range -
741・Sort -
869・DistributeUnions -
925・Assert Array Index -
6228・JSON Parser -
7561・Subtract -
31447・CountReversePairs
> ✨ [今後の課題](https://github.com/type-challenges/type-challenges/issues?q=is%3Aissue+is%3Aopen+label%3Anew-challenge)
## おすすめの資料
### 公式 (英語)
- [The TypeScript Handbook](https://www.typescriptlang.org/docs/handbook/intro.html)
- [Unions and Intersection Types](https://www.typescriptlang.org/docs/handbook/unions-and-intersections.html)
- [Literal Types](https://www.typescriptlang.org/docs/handbook/literal-types.html)
- [Utility Types](https://www.typescriptlang.org/docs/handbook/utility-types.html)
- [Advanced Types](https://www.typescriptlang.org/docs/handbook/advanced-types.html)
- [The New Handbook](https://github.com/microsoft/TypeScript-New-Handbook)
### その他 (日本語)
- [TypeScript Deep Dive - TypeScriptの型システム](https://typescript-jp.gitbook.io/deep-dive/type-system)
## コントリビュート方法
様々な方法でこのプロジェクトに貢献できます。
例:
- 自分の解答を共有する
- 新しい課題を提案する
- 既存の課題にテストケースを追加する
- 問題の解決方法に関する学習資料や、アイデアを提供する
- 実際のプロジェクトで直面した課題を、解決策があるかどうかに関係なく共有する - コミュニティが助けになるでしょう
- Issueの議論に参加して、他の人を助ける
- このプロジェクトのインフラに貢献する [TODOs.md](./TODOs.md)
[Issue](https://github.com/type-challenges/type-challenges/issues/new/choose) を開いてテンプレートを選択するだけです。是非チャレンジしてみて下さい!
## Thanks
このプロジェクトは、[@hardfist](https://github.com/hardfist) と [@MeCKodo](https://github.com/MeCKodo) と一緒に実際の業務で型の課題を解決したことから生まれました。また、このプロジェクトに初期から多くのフィードバックを通して貢献してくれた [@sinoon](https://github.com/sinoon) に感謝します。
日本語のコミュニティの翻訳と維持について、[@kawamataryo](https://github.com/kawamataryo)に感謝します。
### [Contributors](https://github.com/type-challenges/type-challenges/graphs/contributors)
![Contributors](https://contrib.rocks/image?repo=type-challenges/type-challenges)
## ライセンス
MIT