You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+32-41
Original file line number
Diff line number
Diff line change
@@ -4,57 +4,48 @@
4
4
5
5
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).
6
6
7
-
Using Typescript as the language throughout the challenges.
8
-
9
-
Just trying to learn Typescript and improve my problem solving skills.
10
-
11
-
I am also trying to incorporate testing, documentation and a better GIT control.
7
+
Language used - Typescript
12
8
13
9
Checkout my [Notion](https://mohitjain.notion.site/Coding-Challenges-af9b8197a438447e9b455ab9e010f9a2?pvs=4) where I share how I tackled these challenges, along with my learnings.
14
10
15
-
## Structure
16
-
17
-
-`src` - Contains all the source code
18
-
-`tests` - Contains all the test files
19
-
20
11
## Challenges
21
12
22
13
1.[Write your own wc tool](src/1/)
23
14
2.[Write your own JSON parser](src/2/)
24
-
3.[Write Your Own Compression Tool](src/3/)
25
-
4.[Write Your Own cut Tool](src/4/)
26
-
5.[Write You Own Load Balancer](src/5/)
27
-
6.[Write Your Own Sort Tool](src/6/)
28
-
7.[Write Your Own Calculator](src/7/)
29
-
8.[Write Your Own Redis Server](src/8/)
15
+
3.[Write Your own Compression Tool](src/3/)
16
+
4.[Write Your own cut Tool](src/4/)
17
+
5.[Write Your own Load Balancer](src/5/)
18
+
6.[Write Your own Sort Tool](src/6/)
19
+
7.[Write Your own Calculator](src/7/)
20
+
8.[Write Your own Redis Server](src/8/)
30
21
9.[Write your own grep](src/9/)
31
-
10.[Write Your Own uniq Tool](src/10/)
32
-
11.[Write Your Own Web Server](src/11/)
33
-
12.[Write Your Own URL Shortener](https://github.com/jainmohit2001/short-url)
34
-
13.[Write Your Own diff Tool](src/13/)
35
-
14.[Write Your Own Shell](src/14/)
36
-
15.[Write Your Own cat Tool](src/15/)
37
-
16.[Write Your Own IRC Client](src/16/)
38
-
17.[Write Your Own Memcached Server](src/17/)
39
-
18.[Write Your Own Spotify Client](https://github.com/jainmohit2001/spotify-client)
40
-
19.[Write Your Own Discord Bot](src/19/)
41
-
20.[Write Your Own LinkedIn Carousel Generator](https://github.com/jainmohit2001/carousel-gen)
42
-
21.[Write Your Own Sed](src/21/)
43
-
22.[Write Your Own DNS Resolver](src/22/)
44
-
23.[Write Your Own Traceroute](src/23/)
45
-
24.[Write Your Own Realtime Chat Client and Server - Duplicate of Write Your Own IRC Client](src/16/)
46
-
25.[Write Your Own NATS Message Broker](src/25/)
47
-
26.[Write Your Own Git](src/26/)
48
-
27.[Write Your Own Rate Limiter](src/27/)
49
-
28.[Write Your Own NTP Client](src/28/)
50
-
51
-
Don't ask me about this GAP. This ain't an interview!
22
+
10.[Write Your own uniq Tool](src/10/)
23
+
11.[Write Your own Web Server](src/11/)
24
+
12.[Write Your own URL Shortener](https://github.com/jainmohit2001/short-url)
25
+
13.[Write Your own diff Tool](src/13/)
26
+
14.[Write Your own Shell](src/14/)
27
+
15.[Write Your own cat Tool](src/15/)
28
+
16.[Write Your own IRC Client](src/16/)
29
+
17.[Write Your own Memcached Server](src/17/)
30
+
18.[Write Your own Spotify Client](https://github.com/jainmohit2001/spotify-client)
31
+
19.[Write Your own Discord Bot](src/19/)
32
+
20.[Write Your own LinkedIn Carousel Generator](https://github.com/jainmohit2001/carousel-gen)
33
+
21.[Write Your own Sed](src/21/)
34
+
22.[Write Your own DNS Resolver](src/22/)
35
+
23.[Write Your own Traceroute](src/23/)
36
+
24.[Write Your own Realtime Chat Client and Server - Duplicate of Write Your Own IRC Client](src/16/)
37
+
25.[Write Your own NATS Message Broker](src/25/)
38
+
26.[Write Your own Git](src/26/)
39
+
27.[Write Your own Rate Limiter](src/27/)
40
+
28.[Write Your own NTP Client](src/28/)
41
+
42
+
...
52
43
53
44
41.[Write Your Own HTTP(S) Load Tester](src/41/)
54
45
55
46
## Installation
56
47
57
-
The following command will build all the .ts files present in `src` folder into a new `build` folder.
48
+
The following command will build all the .ts files present in the `src` folder into a new `build` folder.
58
49
59
50
```bash
60
51
npm install
@@ -63,15 +54,15 @@ npm run build
63
54
64
55
## Testing
65
56
66
-
The following command will run all the tests present under the `tests` folder and create the coverage report in `coverage` folder.
57
+
The following command will run all the tests under the `__tests__` folder and create the coverage report in the`coverage` folder.
67
58
68
-
All the relevant required test input files are present in tests folder itself.
59
+
All the required test input files are in the individual `__tests__`folder for each challenge.
69
60
70
61
```bash
71
62
npm test
72
63
```
73
64
74
-
To run tests for specific challenge, use the following command:
65
+
To run tests for a specific challenge, use the following command:
0 commit comments