{ "active": true, "blurb": "TypeScript is a language for writing more maintainable JavaScript. TypeScript adds optional types, classes, and modules to JavaScript.", "exercises": [ { "core": true, "difficulty": 1, "slug": "hello-world", "topics": [ "control_flow_conditionals", "optional_values", "strings", "text_formatting" ], "uuid": "755f6f85-9ab3-4af6-9e35-dbb9d64be9c5" }, { "core": true, "difficulty": 1, "slug": "leap", "topics": [ "booleans", "integers", "logic" ], "uuid": "fb80f76c-42da-4f62-9f0f-8c85d984908b" }, { "core": true, "difficulty": 2, "slug": "rna-transcription", "topics": [ "strings", "transforming" ], "uuid": "b4db381f-1c99-44c6-948c-c8892d77823e" }, { "core": true, "difficulty": 2, "slug": "bob", "topics": [ "control_flow_conditionals", "pattern_recognition", "polymorphism", "regular_expressions", "strings", "unicode" ], "uuid": "3977d4e5-82ca-4801-ae20-6682dda23506" }, { "core": true, "difficulty": 3, "slug": "pangram", "topics": [ "algorithms", "control_flow_conditionals", "control_flow_loops", "lists", "maps", "searching", "strings" ], "uuid": "a2c7abe7-b487-4cc2-a86a-d97cdd61709d" }, { "core": true, "difficulty": 3, "slug": "space-age", "topics": [ "classes", "floating_point_numbers", "mathematics" ], "uuid": "8fe1e0ef-068e-4a53-a576-35be59f8152f" }, { "core": false, "difficulty": 4, "slug": "strain", "topics": [ "algorithms", "arrays", "callbacks", "control_flow_conditionals", "control_flow_loops", "filtering", "lists" ], "uuid": "e16c3064-b2ef-11e7-abc4-cec278b6b50a" }, { "core": true, "difficulty": 4, "slug": "prime-factors", "topics": [ "algorithms", "control_flow_conditionals", "control_flow_loops", "integers", "mathematics" ], "uuid": "4ecf9470-a959-11e7-abc4-cec278b6b50a" }, { "core": false, "difficulty": 5, "slug": "nth-prime", "topics": [ "algorithms", "control_flow_conditionals", "control_flow_loops", "exception_handling", "integers", "mathematics" ], "unlocked_by": "prime-factors", "uuid": "4c1392d7-8779-496f-b0bb-81605e777e3b" }, { "core": false, "difficulty": 5, "slug": "sum-of-multiples", "topics": [ "control_flow_conditionals", "control_flow_loops", "integers", "lists" ], "unlocked_by": "space-age", "uuid": "e431fb10-766a-4542-94ad-9c30224a3885" }, { "core": true, "difficulty": 5, "slug": "linked-list", "topics": [ "algorithms", "arrays", "control_flow_conditionals", "control_flow_loops", "data_structures", "lists", "optional_values" ], "uuid": "7d42dd76-a6cf-11e7-abc4-cec278b6b50a" }, { "core": false, "difficulty": 6, "slug": "binary-search-tree", "topics": [ "algorithms", "control_flow_conditionals", "control_flow_loops", "recursion" ], "unlocked_by": "sum-of-multiples", "uuid": "b912fe4f-c505-4bac-8029-76412644375b" }, { "core": true, "difficulty": 6, "slug": "robot-name", "topics": [ "control_flow_conditionals", "exception_handling", "randomness", "regular_expressions", "sets" ], "uuid": "b00dd1af-f89c-4382-ab43-514651de6b20" }, { "core": true, "difficulty": 6, "slug": "grade-school", "topics": [ "arrays", "maps", "sorting" ], "uuid": "32e79fd7-f002-4bdc-b6bd-7a91d8c1af61" }, { "core": true, "difficulty": 7, "slug": "wordy", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "parsing", "pattern_recognition", "regular_expressions", "strings" ], "uuid": "269577e5-e782-4264-9ad9-9ad4b8bc0aab" }, { "core": false, "difficulty": 8, "slug": "circular-buffer", "topics": [ "arrays", "control_flow_conditionals", "control_flow_loops", "data_structures", "exception_handling", "lists" ], "unlocked_by": "linked-list", "uuid": "3cc210e8-b3bb-11e7-abc4-cec278b6b50a" }, { "core": false, "difficulty": 3, "slug": "gigasecond", "topics": [ "time" ], "unlocked_by": "hello-world", "uuid": "9dfabc5c-d2a5-4896-9fc2-2b25b9a5f62f" }, { "core": false, "difficulty": 3, "slug": "series", "topics": [ "control_flow_loops", "exception_handling", "strings", "text_formatting" ], "unlocked_by": "pangram", "uuid": "dd332597-4924-48dc-abb3-1d3fde492777" }, { "core": false, "difficulty": 3, "slug": "difference-of-squares", "topics": [ "algorithms", "control_flow_loops", "integers", "mathematics" ], "unlocked_by": "hello-world", "uuid": "3f649490-dc7d-4a77-a2a0-2ae71ae834a9" }, { "core": false, "difficulty": 1, "slug": "word-count", "topics": [ "control_flow_loops", "lists", "regular_expressions", "strings", "unicode" ], "unlocked_by": "hello-world", "uuid": "5e5c48fb-91bb-495a-97f6-ec8642739a0a" }, { "core": false, "difficulty": 2, "slug": "raindrops", "topics": [ "control_flow_conditionals", "integers", "strings", "transforming" ], "unlocked_by": "rna-transcription", "uuid": "c8677318-ba6c-4e8c-83ec-513cc6530e7f" }, { "core": false, "difficulty": 2, "slug": "etl", "topics": [ "control_flow_loops", "integers", "maps", "transforming" ], "unlocked_by": "rna-transcription", "uuid": "ab027a47-d483-4011-aac4-564a6284e5b8" }, { "core": false, "difficulty": 3, "slug": "hamming", "topics": [ "control_flow_conditionals", "control_flow_loops", "equality", "strings" ], "unlocked_by": "rna-transcription", "uuid": "18204e23-fca8-44dc-8d5c-abe66b87c640" }, { "core": false, "difficulty": 5, "slug": "scrabble-score", "topics": [ "control_flow_conditionals", "control_flow_loops", "maps", "strings" ], "unlocked_by": "rna-transcription", "uuid": "7c60f7c5-2922-4ce4-acbe-51c5ab654b4d" }, { "core": false, "difficulty": 2, "slug": "acronym", "topics": [ "control_flow_loops", "regular_expressions", "strings", "transforming" ], "unlocked_by": "pangram", "uuid": "f6631a0f-2da3-47a4-b46b-7a81fa0d4dfd" }, { "core": false, "difficulty": 2, "slug": "anagram", "topics": [ "filtering", "strings" ], "unlocked_by": "pangram", "uuid": "2ceec21e-fb9d-4145-8788-826c3941eb01" }, { "core": false, "difficulty": 5, "slug": "phone-number", "topics": [ "parsing", "transforming" ], "unlocked_by": "pangram", "uuid": "bbd4665c-be4b-4d70-bc92-e91ce7a1d55f" }, { "core": false, "difficulty": 5, "slug": "beer-song", "topics": [ "control_flow_conditionals", "control_flow_loops", "strings" ], "unlocked_by": "bob", "uuid": "7a4fefd2-6e71-42d6-82fd-a25d2ef9eae9" }, { "core": false, "difficulty": 6, "slug": "say", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "integers", "mathematics", "strings", "text_formatting" ], "unlocked_by": "bob", "uuid": "8e7b92f4-a508-4200-bd62-b36281dd9ed9" }, { "core": false, "difficulty": 4, "slug": "food-chain", "topics": [ "algorithms", "text_formatting" ], "unlocked_by": "bob", "uuid": "246129c9-83b5-43e0-beb6-8a2cea7e4e17" }, { "core": true, "difficulty": 3, "slug": "clock", "topics": [ "integers", "logic", "mathematics", "strings" ], "uuid": "c6960d69-7794-4711-8891-9c5a63727112" }, { "core": false, "difficulty": 3, "slug": "triangle", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "integers", "mathematics" ], "unlocked_by": "leap", "uuid": "0eb37e93-d191-4451-bd77-cd3681c91d94" }, { "core": true, "difficulty": 5, "slug": "pascals-triangle", "topics": [ "control_flow_conditionals", "control_flow_loops", "mathematics" ], "uuid": "10edb37d-cf5d-443a-bb4c-8831a3986b61" }, { "core": false, "difficulty": 5, "slug": "binary-search", "topics": [ "algorithms", "arrays", "control_flow_conditionals", "control_flow_loops" ], "uuid": "53584e8d-9b8d-4c0e-8ad8-4c228fcf6bcf" }, { "core": false, "difficulty": 4, "slug": "rotational-cipher", "topics": [ "ascii", "iterators", "mathematics" ], "uuid": "dbe39983-5635-4369-89a3-fd549144259b" }, { "core": false, "difficulty": 7, "slug": "largest-series-product", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "integers", "mathematics", "regular_expressions", "strings" ], "unlocked_by": "pangram", "uuid": "b646dc26-59c1-436e-883a-20290de7a526" }, { "core": false, "difficulty": 5, "slug": "robot-simulator", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "games", "parsing", "strings" ], "unlocked_by": "wordy", "uuid": "abe907d0-7ca0-4fe5-83fd-72a4d2acab66" }, { "uuid": "85d74be3-8a54-4355-9ef8-0f13ed2a7683", "slug": "pythagorean-triplet", "core": false, "unlocked_by": "space-age", "difficulty": 5, "topics": [ "control_flow_conditionals", "control_flow_loops", "algorithms", "mathematics", "integers" ] }, { "core": false, "difficulty": 5, "slug": "ocr-numbers", "topics": [ "control_flow_conditionals", "control_flow_loops", "exception_handling", "equality", "parsing", "integers", "text_formatting" ], "unlocked_by": "matrix", "uuid": "61f0964f-0779-446d-bd6b-6bb988414302" }, { "uuid": "df7c1bff-2224-422b-9c34-64b28b09510e", "slug": "diamond", "core": false, "unlocked_by": "pascals-triangle", "difficulty": 5, "topics": [ "Control-flow (conditionals)", "Control-flow (loops)", "Arrays", "Parsing", "Games", "Exception handling", "Text formatting" ] }, { "uuid": "7dd29a19-08f6-8480-2e01-1f7262d8860a", "slug": "two-bucket", "core": false, "unlocked_by": "pangram", "difficulty": 6, "topics": [ "algorithms", "arrays", "control-flow-(conditionals)", "control-flow-(loops)", "exception-handling", "games", "parsing" ] }, { "uuid": "04de61fb-9fde-461c-b306-0b4ce52e2169", "slug": "atbash-cipher", "core": true, "difficulty": 7, "topics": [ "algorithms", "arrays", "control-flow-(conditionals)", "control-flow-(loops)", "text-formatting" ] } ], "foregone": [], "language": "TypeScript", "test_pattern": ".*[.]test[.]ts$" }