Skip to content

przeprogramowani/typescript-challenges

Repository files navigation

Opanuj TypeScript z Przeprogramowanymi

All Contributors

A set of challenges that help you understand TypeScript 🚀

Setup & Installation

Clone this repository and run npm install. You're good to go!

👉 How to

  • Each directory in src represents a challenge related to a specific feature of TypeScript.
  • In each challenge your solution have to pass two kinds of tests - TypeScript compilation and unit tests
  • Challenge of name XYZ can be verified by running npm run test:XYZ, for example: npm run test:warm-up

Note: To pass the challenge, make sure you only modify TypeScript files. Tests should remain unchanged.

🛠️ Test commands for challenges

Discover all the challenges by running npm run in your console. Here's the list of available commands:

  • npm run test:warm-up
  • npm run test:media
  • npm run test:shortcuts
  • npm run test:this-or-that
  • npm run test:only-one
  • npm run test:new-skills
  • npm run test:constraints
  • npm run test:type-operator

💪 Advanced challenge

If you're looking for a "final boss", we've something that will let you practice advanced TypeScript inside a React app. More details are available in the src/advanced-filtering/README.md. Enjoy!

🙌 Contributors welcomed!

If you want to contribute to this project, feel free to create a pull request. We're open to new challenges, suggestions and improvements! Happy to feature your name in the contributors list 🎉

When creating a new challenge, make sure you update the following parts of the project:

  • src - add a new directory with the challenge and tests
  • package.json - add a new test command
  • README.md - add a new section with a description of the challenge

🛟 Help me, I'm stuck!

Find all the answers in TypeScript Documentation

Contributors ✨

Thanks goes to these wonderful people (emoji key):

PatrykPytlarczyk
PatrykPytlarczyk

💻
raqso
raqso

💻

This project follows the all-contributors specification. Contributions of any kind welcome!