From ff05294b3171a7e691d214ace6a391079d38a353 Mon Sep 17 00:00:00 2001 From: Mohit Jain <45727354+jainmohit2001@users.noreply.github.com> Date: Thu, 4 Jan 2024 09:49:44 +0530 Subject: [PATCH] Update README.md --- README.md | 73 ++++++++++++++++++++++++------------------------------- 1 file changed, 32 insertions(+), 41 deletions(-) diff --git a/README.md b/README.md index 7d511e9..bb99346 100644 --- a/README.md +++ b/README.md @@ -4,57 +4,48 @@ This repository contains my solutions to John Crickett's Coding Challenges. The challenges are available at [https://codingchallenges.fyi/challenges/intro](https://codingchallenges.fyi/challenges/intro). -Using Typescript as the language throughout the challenges. - -Just trying to learn Typescript and improve my problem solving skills. - -I am also trying to incorporate testing, documentation and a better GIT control. +Language used - Typescript Checkout my [Notion](https://mohitjain.notion.site/Coding-Challenges-af9b8197a438447e9b455ab9e010f9a2?pvs=4) where I share how I tackled these challenges, along with my learnings. -## Structure - -- `src` - Contains all the source code -- `tests` - Contains all the test files - ## Challenges 1. [Write your own wc tool](src/1/) 2. [Write your own JSON parser](src/2/) -3. [Write Your Own Compression Tool](src/3/) -4. [Write Your Own cut Tool](src/4/) -5. [Write You Own Load Balancer](src/5/) -6. [Write Your Own Sort Tool](src/6/) -7. [Write Your Own Calculator](src/7/) -8. [Write Your Own Redis Server](src/8/) +3. [Write Your own Compression Tool](src/3/) +4. [Write Your own cut Tool](src/4/) +5. [Write Your own Load Balancer](src/5/) +6. [Write Your own Sort Tool](src/6/) +7. [Write Your own Calculator](src/7/) +8. [Write Your own Redis Server](src/8/) 9. [Write your own grep](src/9/) -10. [Write Your Own uniq Tool](src/10/) -11. [Write Your Own Web Server](src/11/) -12. [Write Your Own URL Shortener](https://github.com/jainmohit2001/short-url) -13. [Write Your Own diff Tool](src/13/) -14. [Write Your Own Shell](src/14/) -15. [Write Your Own cat Tool](src/15/) -16. [Write Your Own IRC Client](src/16/) -17. [Write Your Own Memcached Server](src/17/) -18. [Write Your Own Spotify Client](https://github.com/jainmohit2001/spotify-client) -19. [Write Your Own Discord Bot](src/19/) -20. [Write Your Own LinkedIn Carousel Generator](https://github.com/jainmohit2001/carousel-gen) -21. [Write Your Own Sed](src/21/) -22. [Write Your Own DNS Resolver](src/22/) -23. [Write Your Own Traceroute](src/23/) -24. [Write Your Own Realtime Chat Client and Server - Duplicate of Write Your Own IRC Client](src/16/) -25. [Write Your Own NATS Message Broker](src/25/) -26. [Write Your Own Git](src/26/) -27. [Write Your Own Rate Limiter](src/27/) -28. [Write Your Own NTP Client](src/28/) - -Don't ask me about this GAP. This ain't an interview! +10. [Write Your own uniq Tool](src/10/) +11. [Write Your own Web Server](src/11/) +12. [Write Your own URL Shortener](https://github.com/jainmohit2001/short-url) +13. [Write Your own diff Tool](src/13/) +14. [Write Your own Shell](src/14/) +15. [Write Your own cat Tool](src/15/) +16. [Write Your own IRC Client](src/16/) +17. [Write Your own Memcached Server](src/17/) +18. [Write Your own Spotify Client](https://github.com/jainmohit2001/spotify-client) +19. [Write Your own Discord Bot](src/19/) +20. [Write Your own LinkedIn Carousel Generator](https://github.com/jainmohit2001/carousel-gen) +21. [Write Your own Sed](src/21/) +22. [Write Your own DNS Resolver](src/22/) +23. [Write Your own Traceroute](src/23/) +24. [Write Your own Realtime Chat Client and Server - Duplicate of Write Your Own IRC Client](src/16/) +25. [Write Your own NATS Message Broker](src/25/) +26. [Write Your own Git](src/26/) +27. [Write Your own Rate Limiter](src/27/) +28. [Write Your own NTP Client](src/28/) + +... 41. [Write Your Own HTTP(S) Load Tester](src/41/) ## Installation -The following command will build all the .ts files present in `src` folder into a new `build` folder. +The following command will build all the .ts files present in the `src` folder into a new `build` folder. ```bash npm install @@ -63,15 +54,15 @@ npm run build ## Testing -The following command will run all the tests present under the `tests` folder and create the coverage report in `coverage` folder. +The following command will run all the tests under the `__tests__` folder and create the coverage report in the `coverage` folder. -All the relevant required test input files are present in tests folder itself. +All the required test input files are in the individual `__tests__` folder for each challenge. ```bash npm test ``` -To run tests for specific challenge, use the following command: +To run tests for a specific challenge, use the following command: ```bash # npm test src//