diff --git a/.all-contributorsrc b/.all-contributorsrc index 6d60fe7e..e3708533 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -761,6 +761,33 @@ "contributions": [ "content" ] + }, + { + "login": "georgem3", + "name": "George Mamer", + "avatar_url": "https://avatars1.githubusercontent.com/u/20108934?v=4", + "profile": "http://twitter.com/georgemamer", + "contributions": [ + "content" + ] + }, + { + "login": "leimonio", + "name": "Konstantinos Leimonis", + "avatar_url": "https://avatars0.githubusercontent.com/u/1969742?v=4", + "profile": "https://github.com/leimonio", + "contributions": [ + "content" + ] + }, + { + "login": "Zybax", + "name": "Oliver Lluberes", + "avatar_url": "https://avatars3.githubusercontent.com/u/22094453?v=4", + "profile": "https://github.com/Zybax", + "contributions": [ + "translation" + ] } ], "projectName": "nodebestpractices", diff --git a/.operations/operations-manual.md b/.operations/operations-manual.md index e42fc53d..65daf19f 100644 --- a/.operations/operations-manual.md +++ b/.operations/operations-manual.md @@ -40,17 +40,17 @@ Each month, a maintainer on call will open an issue for maintenance work and rec | Month | Maintainer on call | |---------|--------------------| -| 10/2018 | Sagir | -| 11/2018 | Bruno | -| 12/2018 | Yoni | -| 01/2019 | Kyle | -| 02/2019 | Sagir | -| 03/2019 | Bruno | -| 04/2019 | Yoni | -| 05/2019 | Kyle | -| 06/2019 | Sagir | -| 07/2019 | Bruno | -| 09/2019 | Yoni | +| 10/2019 | Yoni | +| 11/2019 | Bruno | +| 12/2019 | Kyle | +| 01/2020 | Yoni | +| 02/2020 | Bruno | +| 03/2020 | Kyle | +| 04/2020 | Yoni | +| 05/2020 | Bruno | +| 06/2020 | Kyle | +| 07/2020 | Yoni | +| 09/2020 | Bruno |
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index c54d9329..1ab823a9 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -116,6 +116,11 @@ Thanks goes to these wonderful people who have contributed to this repository! Eduard Kyvenko
Eduard Kyvenko

πŸ–‹ Deyvison Rocha
Deyvison Rocha

πŸ–‹ + + George Mamer
George Mamer

πŸ–‹ + Konstantinos Leimonis
Konstantinos Leimonis

πŸ–‹ + Oliver Lluberes
Oliver Lluberes

🌍 + diff --git a/README.md b/README.md index 14bdab07..0254f7ee 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@
- 84 items Last update: Jun 5, 2019 Updated for Node 12.14.0 LTS + 84 items Last update: Oct 12, 2019 Updated for Node 12.12.0

@@ -22,6 +22,8 @@ Read in a different language: [![CN](/assets/flags/CN.png)**CN**](/README.chines
+###### Our steering committee member, Yoni Goldberg, will speak this month about Node.js practices at [Verona](https://2019.nodejsday.it), [Kharkiv](https://kharkivjs.org) and Atlanta (more details soon) + ###### Built and maintained by our [Steering Committee](#steering-committee) and [Collaborators](#collaborators) # Latest Best Practices and News diff --git a/README.russian.md b/README.russian.md index b1b3aeed..a2e3c7ad 100644 --- a/README.russian.md +++ b/README.russian.md @@ -9,7 +9,7 @@
- 84 items Last update: Jun 5, 2019 Updated for Node 12.14.0 LTS + 84 items Last update: Oct 12, 2019 Updated for Node 12.12.0

@@ -22,6 +22,8 @@
+###### Π§Π»Π΅Π½ нашСго руководящСго ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚Π° Π™ΠΎΠ½ΠΈ Π“ΠΎΠ»Π΄Π±Π΅Ρ€Π³ Π² этом мСсяцС расскаТСт ΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Node.js Π² [Π’Π΅Ρ€ΠΎΠ½Π΅](https://2019.nodejsday.it), [Π₯Π°Ρ€ΡŒΠΊΠΎΠ²Π΅](https://kharkivjs.org ) ΠΈ АтлантС(подробности скоро) + ###### Π‘ΠΎΠ·Π΄Π°Π½ΠΎ ΠΈ поддСрТиваСтся нашим [руководящим ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΎΠΌ](#steering-committee) and [соавторами](#collaborators) # ПослСдниС Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈ новости diff --git a/sections/projectstructre/configguide.md b/sections/projectstructre/configguide.md index 6e7b3663..df340db0 100644 --- a/sections/projectstructre/configguide.md +++ b/sections/projectstructre/configguide.md @@ -14,6 +14,8 @@ When dealing with configuration data, many things can just annoy and slow down: 4. some advanced configuration scenarios demand to inject configuration values via command line (vargs) or sync configuration info via a centralized cache like Redis so multiple servers will use the same configuration data. +5. the application should fail as fast as possible and provide the immediate feedback if the required environment variables are not present at start-up, this can be achieved by using [convict](https://www.npmjs.com/package/convict) to validate the configuration. + Some configuration libraries can provide most of these features for free, have a look at npm libraries like [rc](https://www.npmjs.com/package/rc), [nconf](https://www.npmjs.com/package/nconf) and [config](https://www.npmjs.com/package/config) which tick many of these requirements.

diff --git a/sections/projectstructre/configguide.russian.md b/sections/projectstructre/configguide.russian.md index 90648b28..52f2b87a 100644 --- a/sections/projectstructre/configguide.russian.md +++ b/sections/projectstructre/configguide.russian.md @@ -14,6 +14,8 @@ 4. НСкоторыС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ сцСнарии ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π²Π²ΠΎΠ΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку (vargs) ΠΈΠ»ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ кСш, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Redis, Ρ‡Ρ‚ΠΎΠ±Ρ‹ нСсколько сСрвСров использовали ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. +5. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь, Ссли Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ срСды ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΏΡ€ΠΈ запускС, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ [convict](https://www.npmjs.com/package/convict) для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. + НСкоторыС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ бСсплатно, посмотритС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ npm, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ [rc](https://www.npmjs.com/package/rc), [nconf](https://www.npmjs.com/package/nconf) ΠΈ [config](https://www.npmjs.com/package/config), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· этих Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ.