{"id":13516858,"url":"https://github.com/anuraghazra/type-trident","last_synced_at":"2025-04-06T18:17:00.405Z","repository":{"id":39799049,"uuid":"495901060","full_name":"anuraghazra/type-trident","owner":"anuraghazra","description":"A curated list of advanced type level madness","archived":false,"fork":false,"pushed_at":"2024-01-28T13:41:18.000Z","size":245,"stargazers_count":356,"open_issues_count":3,"forks_count":23,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-03-30T16:12:46.165Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anuraghazra.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-24T16:20:47.000Z","updated_at":"2025-03-20T16:19:52.000Z","dependencies_parsed_at":"2024-01-11T19:17:16.629Z","dependency_job_id":"9024c842-fdb7-4d43-bf87-d7ae634a5c22","html_url":"https://github.com/anuraghazra/type-trident","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuraghazra%2Ftype-trident","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuraghazra%2Ftype-trident/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuraghazra%2Ftype-trident/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuraghazra%2Ftype-trident/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anuraghazra","download_url":"https://codeload.github.com/anuraghazra/type-trident/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526768,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T05:01:26.621Z","updated_at":"2025-04-06T18:17:00.375Z","avatar_url":"https://github.com/anuraghazra.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://res.cloudinary.com/anuraghazra/image/upload/v1653406945/ts-trident-logo_prpl4r.png\" alt=\"Type Trident Logo\" width=\"140px\" /\u003e\n  \u003ch1 align=\"center\"\u003etype-trident\u003c/h1\u003e\n  \u003cp align=\"center\"\u003eA curated list of advanced type level madness\u003c/p\u003e\n\u003c/p\u003e\n\n## :magic_wand: List\n\n- [bubble-sort](./src/bubble-sort) | [playground](https://tsplay.dev/Ndo5vw) | [tweet](https://twitter.com/anuraghazru/status/1511776290487279616)  \n  Type level bubble sort algorithm\n\n- [insertion-sort](./src/insertion-sort) | [playground](https://tsplay.dev/w17dOm) | [tweet](https://twitter.com/anuraghazru/status/1591448028640317440)  \n  Type level insertion sort algorithm\n\n- [tic-tac-toe](./src/tic-tac-toe/index.ts) | [playground](https://codesandbox.io/s/type-level-tic-tac-toe-yqbmk9?file=/src/index.ts:2465-2492) | [tweet](https://twitter.com/anuraghazru/status/1530866079999791105)  \n  Type level tic-tac-toe game\n\n- [classnames](./src/classnames/) | [playground](https://tsplay.dev/N7OnqN) | [tweet](https://twitter.com/anuraghazru/status/1401593199148244993)  \n  Type safe version of [classnames package](https://www.npmjs.com/package/classnames)\n\n- [hex-to-rgb](./src/hex-to-rgb/) | [playground](https://tsplay.dev/WPpLEW) | [tweet](https://twitter.com/anuraghazru/status/1464564132045152260)  \n  Type level hex to rgb color conversion\n\n- [url-parser](./src/url-parser/) | [playground](https://tsplay.dev/mMMAlm) | [tweet](https://twitter.com/anuraghazru/status/1467129993402609669)  \n  Type level URL parser\n\n- [math](./src/math/) | [playground](https://tsplay.dev/w65YeW) | [tweet](https://twitter.com/anuraghazru/status/1403756647240003588)  \n  Type level math operations\n\n- [mustache-interpolation](./src/mustache-interpolation/) | [playground](https://tsplay.dev/WPZXJN) | [tweet](https://twitter.com/anuraghazru/status/1311002040672219136)  \n  Type level {{mustache}} string interpolator\n\n- [ds-tokenizer](./src/ds-tokenizer/) | [playground](https://tsplay.dev/w8okdW) | [tweet](https://twitter.com/anuraghazru/status/1501969255696244736)  \n  A theme tokenizer for design systems\n\n- [typed-reactintl](./src/typed-reactintl/) | [playground](https://tsplay.dev/Nlv9GW) | [tweet](https://twitter.com/anuraghazru/status/1459207971838181377)  \n  A type safe version of [ReactIntl](https://www.npmjs.com/package/react-intl) package\n\n- [css-parser](./src/css-parser/) | [playground](https://tsplay.dev/wRRLQw) | [tweet](https://twitter.com/anuraghazru/status/1310634306092462080)  \n  Very buggy type level CSS parser\n\n- [count-generic-args](./src/count-generic-args/) | [playground](https://tsplay.dev/NVZjBN) | [tweet](https://twitter.com/anuraghazru/status/1405925522102657029)  \n  An interesting way of knowing if a generic argument is passed by the user or is set with default value (more info in tweet)\n\n- [tree-api](./src/tree-api/) | [playground](https://tsplay.dev/WoGBgW) | [tweet](https://twitter.com/anuraghazru/status/1383476150362542085)  \n  Type safe tree api\n\n- [typed-regex-named-groups](./src/typed-regex-named-groups) | [playground](https://tsplay.dev/N5LV2w) | [tweet](https://twitter.com/anuraghazru/status/1564980027115986945)  \n  Typesafe RegExp named groups\n\n- [string-to-number](./src/string-to-number) | [playground](https://tsplay.dev/Nr9Law) | [tweet](https://twitter.com/anuraghazru/status/1573328090884980739)  \n  String to number conversion (with floating number supports)\n\n- [Number Range type](./src/range-type) | [playground](https://tsplay.dev/N95d8N) | [tweet](https://twitter.com/anuraghazru/status/1573328100246822917)  \n  Range type which generates union of number between two numbers (with floating number supports)\n\n**Leetcode challenges**\n\n- [Leetcode 1209](./src/leetcode/remove-all-adjacent-duplicates-in-string-2.ts) | [playground](https://tsplay.dev/NDgkxw) | [tweet](https://twitter.com/anuraghazru/status/1673736137373020161)  \n  Remove All Adjacent Duplicates in String II \n- [Leetcode 12](./src/leetcode/roman-to-int.ts) | [playground](https://tsplay.dev/Ndarvm) | [tweet](https://twitter.com/anuraghazru/status/1674816392225488896)  \n  Roman to Integer\n  \n**And the most crazy one**:\n\n- [Type level parser](https://github.com/anuraghazra/typelevel-parser) - [Tweet](https://twitter.com/anuraghazru/status/1512092136841543682)  \n  An experimental tokenizer/parser/interpreter written entirely on type-level to push the limits of TypeScript's type system.\n\n---\n\nThis repository is inspired by [Type Gymnastic](https://github.com/g-plane/type-gymnastics) by g-plane.\n","funding_links":[],"categories":["Technical"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuraghazra%2Ftype-trident","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanuraghazra%2Ftype-trident","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuraghazra%2Ftype-trident/lists"}