- Fetch the specified GitHub issue with
gh issue view - Create a feature branch named
feature/<issue-number>-<short-description> - Set the issue to "In Progress" on the project board
- Read relevant code and create an implementation plan
- Implement using TDD - write tests first, then implementation
- Run full test suite with
npm test - Commit with message referencing the issue: "feat: (#)"
- Push and open a PR with
gh pr createlinking the issue
| const scaleChartGeneratorMachine = Machine({ | |
| id: 'scale-chart-generator', | |
| initial: 'default', | |
| context: { | |
| musicKey: undefined, | |
| scaleName: undefined, | |
| withKeySignature: false, | |
| }, | |
| states: { |
Very often I find myself trying to learn something new which requires from me to run easy-to-forget console/terminal commands.
Sometimes I have to trial-and-error using different commands until I finally get it, which means I may have some difficulty trying to remember what I did next time I want to do it again.
To avoid this I find very useful to save my command line history so I can replay back everything I did step by step.
Recently I started to learn Python. My first experiment consisted of a simple script
named script.py to print the classic "Hello World!" message. To make the file
executable, I added the shebang at the top of the file.
Contents in script.py:
#!/usr/bin/env python3I hereby claim:
- I am amypellegrini on github.
- I am amypellegrini (https://keybase.io/amypellegrini) on keybase.
- I have a public key ASCj0KljOByEIgUNDMwkfXxa0t2XAI-bAtmY1crdA_eEVgo
To claim this, I am signing this object:
| // Shortest Word | |
| function findShort(str) { | |
| return str.split(' ').sort((a, b) => { | |
| return a.length < b.length ? -1 : 1; | |
| })[0].length; | |
| } |
| let x1 = process.argv[2], | |
| y1 = process.argv[3], | |
| x2 = process.argv[4], | |
| y2 = process.argv[5]; | |
| /** | |
| * Return the distance between two points for the given coordinates. | |
| * | |
| * @param {Number} x1 - x coordinate for the first point. | |
| * @param {Number} y1 - y coordinate for the fisrt point. |
While the following structure is not an absolute requirement or enforced by the tools, it is a recommendation based on what the JavaScript and in particular Node community at large have been following by convention.
Beyond a suggested structure, no tooling recommendations, or sub-module structure is outlined here.
lib/is intended for code that can run as-issrc/is intended for code that needs to be manipulated before it can be used