Skip to content

🎄My 'chocolate-free' Advent Calendar practicing Typescript

License

Notifications You must be signed in to change notification settings

jforatier/advent-of-code-typescript

Repository files navigation

🎄 Advent of Code - Typescript

My 'chocolate-free' Advent Calendar for TypeScript

2020 Progress 2019 Progress

CI codecov


⚙️ Installation

Required: Node 14 or higher (download)

npm i

▶️ Running all solutions

npm start

Running specific day in dev mode

npm start day<N>

Example:

npm start day01

🧪 Test

npm test

🎓 Lesson Learned - with expression throwed in the house

General

  • You will do shit ... Deal with-it (don't panic you'll clean-it) - "Why i write the same code twice ? Why this function of 30 lines is not used."
  • You will dont't get it all on first read ... Baby-steps - "A plane in a tree ? Why ?"
  • Take care of your inputs (and edit-it) - "$#% my code was good it's the f### input parser (i write)"
  • Be verbouse (but not too much) - "const allTheRulesSortedByNameWithValueChecked"
  • Test Test & Test (whatever how) - "Ok, so that function was not doing what expecting she should does. Waht the test are telling ? Ah ... no test here ..."
  • Be different, You have 1 way of coding recpect-it, follow-it each have pro and cons - "Why the f### in Python it take 2 lines, Ok but my code is more readable ..."
  • Share and Read others but avoid ctrl-c/ctrl-v - "Hey, that's a great idea ... 5 minutes later 'This f### method is revreted ..."
  • Don't forget default case - "I don't understand, i'm logging thing here ... Ah didn't see that case"

Technical

  • BitManipulation - Read

🛠️ Tools discovered

I want to ... Selected Seen Skill
... run test mocha jest Know-It
... write readable test chai Know-It
... know coverage NYC Know-It
... parse file with ease

🔬 Solutions to experiment

I want to ... Selected Challenger Done
... share my code Github BitBucket
... quick-share and run some parts of my code Codesandbox
... take care of my commits CommitLint
... add some fun and relax on my repo GitMoji
... know my coverage Codecov
... know how much time it take sentry
... know if i can do better in my way of coding codacy sonarcloud.io
... monitor quality with a lifecycle codeclimate
... know vulnerabilities snyk
... watch dependencies issues Dependabot
... auto-update my dependencies Dependabot Greenkeeper, Renovate
... check/format my code prettier
... check my doc issues markdownlint
... check my code issues eslint
... monitor run sentry
... make releasable solution release-it

🙏 Thanks