diff --git a/package-lock.json b/package-lock.json
index e8c9a80..143df41 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -21,7 +21,7 @@
"@toycode/markdown-it-class": "^1.2.4",
"babel-loader": "^9.1.3",
"babel-plugin-syntax-dynamic-import": "^6.18.0",
- "bulma": "^0.9.2",
+ "bulma": "^0.9.4",
"clean-webpack-plugin": "^4.0.0",
"css-loader": "^6.8.1",
"csso": "^5.0.5",
@@ -2935,9 +2935,9 @@
}
},
"node_modules/bulma": {
- "version": "0.9.2",
- "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.2.tgz",
- "integrity": "sha512-e14EF+3VSZ488yL/lJH0tR8mFWiEQVCMi/BQUMi2TGMBOk+zrDg4wryuwm/+dRSHJw0gMawp2tsW7X1JYUCE3A==",
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.4.tgz",
+ "integrity": "sha512-86FlT5+1GrsgKbPLRRY7cGDg8fsJiP/jzTqXXVqiUZZ2aZT8uemEOHlU1CDU+TxklPEZ11HZNNWclRBBecP4CQ==",
"dev": true
},
"node_modules/call-bind": {
@@ -12272,9 +12272,9 @@
}
},
"bulma": {
- "version": "0.9.2",
- "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.2.tgz",
- "integrity": "sha512-e14EF+3VSZ488yL/lJH0tR8mFWiEQVCMi/BQUMi2TGMBOk+zrDg4wryuwm/+dRSHJw0gMawp2tsW7X1JYUCE3A==",
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/bulma/-/bulma-0.9.4.tgz",
+ "integrity": "sha512-86FlT5+1GrsgKbPLRRY7cGDg8fsJiP/jzTqXXVqiUZZ2aZT8uemEOHlU1CDU+TxklPEZ11HZNNWclRBBecP4CQ==",
"dev": true
},
"call-bind": {
diff --git a/package.json b/package.json
index e7684e3..9ae461f 100644
--- a/package.json
+++ b/package.json
@@ -41,7 +41,7 @@
"@toycode/markdown-it-class": "^1.2.4",
"babel-loader": "^9.1.3",
"babel-plugin-syntax-dynamic-import": "^6.18.0",
- "bulma": "^0.9.2",
+ "bulma": "^0.9.4",
"clean-webpack-plugin": "^4.0.0",
"css-loader": "^6.8.1",
"csso": "^5.0.5",
@@ -83,4 +83,4 @@
"dependencies": {
"@11ty/eleventy-fetch": "^4.0.0"
}
-}
+}
\ No newline at end of file
diff --git a/src/.DS_Store b/src/.DS_Store
index 9f701b6..ea7e442 100644
Binary files a/src/.DS_Store and b/src/.DS_Store differ
diff --git a/src/_data/quotes.js b/src/_data/quotes.js
index 54f2aa6..14de1f9 100644
--- a/src/_data/quotes.js
+++ b/src/_data/quotes.js
@@ -1,86 +1,86 @@
const quotes = [
{
name: 'Joe Karlsson',
- role: 'Software Engineer at MongoDB',
+ role: 'Developer Advocate at Tinybird',
picture: './img/people/joe-karlsson-node-js.jpg',
text: `I've read basically every Node.js book ever published, and this is my personal favorite (and best) by far. Even months after reading all the way through this text, I still learn new things each time I browse through it.
What can I say, this is a must for anyone writing code in Node. js. Everything in the book, including the code examples, are very useful in practice.`
},
{
name: 'Gleb Bahmutov',
- role: 'VP of Engineering at Cypress.io',
+ role: 'Senior Director Of Engineering at Mercari',
picture: './img/people/gleb-bahmutov-node-js.jpg',
text: 'Wow! This book ... is amazing. After many years of programming with JavaScript, I still have learnt so much from this book. It covers many topics relevant to large Node.js applications with ease, with many relevant code snippets making the material easily approachable. While not for beginners, it is a great book for anyone looking to take their JS applications to the higher level.'
},
{
name: 'Radoslav Stankov',
- role: 'Head of engineering at ProductHunt',
+ role: 'CTO and Co-Founder at Angry Building',
picture: './img/people/radoslav-stankov-node-js.jpg',
text: 'Node.js Design Patterns is an excellent resource for learning. I learned a lot of things that I thought I already knew. My favorite part is the Commonjs and ES6 import systems and a lot of the more advanced recipes.'
},
{
name: 'Ire Aderinokun',
- role: 'VP Engineering at BuyCoin Africa',
+ role: 'Frontend Engineer, Entrepreneur, Investor',
picture: './img/people/ire-aderinokun-node-js.jpg',
text: 'Node.js Design Patterns is a really in-depth look into the world of Node.js. Everything you ever wanted to know, and more! It’s very comprehensive, and gets into the details of how Node.js works. It’s a perfect book for anyone who already knows a bit about Node.js, and is looking to deepen their knowledge.'
},
{
name: 'Ersel Aker',
- role: 'Co-founder & CTO at JustFulfil',
+ role: 'Co-Founder at futurecast.studio',
picture: './img/people/ersel-aker-node-js.jpg',
text: 'Read through a few chapters of Node.js Design Patterns this morning. It\'s an excellent reference book covering everything from from the intricacies of the Node.js runtime to scaling your services to serve millions of users. Grabbed another copy for our engineering team to use as a study tool.'
},
{
name: 'Mike Rourke',
- role: 'Software Engineer and Author',
+ role: 'Software Engineer at a.i. solutions and Author',
picture: './img/people/mike-rourke-node.jpg',
text: 'There is a lot of useful content in this book, and I think the title doesn\'t do it justice. If you want a comprehensive book about Node.js that not only acts as a reference for best practices and design patterns, but also as a one-stop shop for understanding how Node.js works behind the scenes, look no further!'
},
{
name: 'Maya Shavin',
- role: 'Senior Frontend Engineer at Cloudinary',
+ role: 'Senior Software Engineer at Microsoft and Author',
picture: './img/people/maya-shavin-node-js.jpg',
text: 'This book surprised me for how detailed it is! It contains a lot of useful and easy-to-understand information. For someone familiar with the Node.js, I\'m intrigued by how much depth the book provides in working with Node.js. Every topic is approached in a very straightforward way: while being practical, this book offers different readers\' levels - from the most juniors to the experienced ones - an excellent reference to apply design patterns in any real scale Node.js application. Totally going to bookmark it as my favorite Node.js book!'
},
{
name: 'Kostas Bariotis',
- role: 'Software Engineer at Bulb',
+ role: 'Sr. Software Engineer at Mixmax',
picture: './img/people/kostas-bariotis-node-js.jpg',
text: 'Node.js Design Patterns is an amazing resource for every level of Node.js developers. It covers important design patters that are used in the Node.js world (modules, callbacks, asynchronicity, etc) and explores critical bits of the core library (promises, streams, event emitters, etc). Finally, it provides best practices on running Node.js as part of a bigger architecture where you need to horizontally scale an application, balance the incoming load and setup a message bus in between your services.'
},
{
name: 'David Wells',
- role: 'Serverless architect & full-stack developer',
+ role: 'Full Stack Engineer at Vendia',
picture: './img/people/david-wells-node-js.jpg',
text: 'If you want a deep dive into how Node.js works and the available design patterns, I\'d recommend checking out Mario and Luciano\'s new book. I particularly enjoyed the section on using streams. After reading, I realized haven\'t been leveraging streams enough in my projects.'
},
{
name: 'Simon Høiberg',
- role: 'Freelance Software Engineer',
+ role: 'Software Developer and Startup CEO',
picture: './img/people/simon-hoiberg-node-js.jpg',
text: 'Node.js Design Patterns is a great, in-depth resource for both beginners and advanced. Even though I\'ve been writing Node.js applications for the past 5 years, I learned a lot from this comprehensive piece of work. By far the best Node.js book currently out there.'
},
{
name: 'Mike Alche',
- role: 'Node.js and React consultant',
+ role: 'React, React Native & Node.js software consultant',
picture: './img/people/mike-alche-node-js.jpg',
text: 'Every time a new Node.js book comes out I read it. I think there isn’t a single one that I haven’t read. And out of all of them I must say that Node.js Design Patterns is by far — and I mean it BY FAR— the undisputed best. To put it in the most honest way possible: this is the book I go to read when preparing to teach a Node.js class to groups of software engineers.'
},
{
name: 'Theodore Vorillas',
- role: 'JavaScript Engineer at Workable',
+ role: 'Independent Software Engineer and JavaScript expert',
picture: './img/people/theodore-vorillas-node-js.jpg',
text: 'Node.js Design Patterns is a must read, an excellent resource for learning how to build Node.js applications. I loved the fact that you can actually learn new stuff regardless your experience. My favorite chapters are about scaling a production application (Universal JavaScript, Scalability and Architectural Patterns, Advanced Recipes)... and the coding samples are also available for free on GitHub!'
},
{
name: 'David Gonzalez',
- role: 'Full stack engineer/DevOps, Google Developer Expert and author',
+ role: 'Principal Engineer at Cloudsmith and author',
picture: './img/people/david-gonzalez-node-js.jpg',
text: 'I am a hardcore techie, big into Node.js and I have to say I have learnt a lot by just going through Node.js Design Patterns. The level of detail and quality of the examples are incredible and in general, it is a good book have as a reference to solve any problem that might arise while code (not only in Node.js). This is a book I recommend to my students to go from 0 to hero and keep it as a reference forever. The previous edition was good, but this one is just out of this world.'
},
{
name: 'Maxim Salnikov',
- role: 'Developer Engagement Lead at Microsoft',
+ role: 'Developer Productivity Business Lead at Microsoft',
picture: './img/people/maxim-salnikov-node-js.jpg',
text: 'I have "Node.js Design Patterns" always at hand both when I start quick new projects and when the time comes to refactor the larger and mature ones. It\'s an invaluable and well-structured source of patterns, best practices, and guidelines. Also, it’s always good to know that particular features are in use in well-known projects - thanks to the “In the wild” section. As a full-stack developer focused on the front-end, I especially enjoyed a chapter about universal JavaScript.'
}
diff --git a/src/_data/reviews.js b/src/_data/reviews.js
new file mode 100644
index 0000000..b68b88c
--- /dev/null
+++ b/src/_data/reviews.js
@@ -0,0 +1,60 @@
+const reviews = [
+ {
+ name: 'Rebecca',
+ link: 'https://www.amazon.com/gp/customer-reviews/R1BDT82UPKFUPZ/',
+ rating: 5,
+ title: 'Extremely helpful',
+ text: 'From the title, the book sounded like it would be exactly what I needed and I am happy to say it is. There are always several ways of doing things and the pitfalls/best practices (and reasons behind them) are not always immediately obvious. This book gives you the tools to reason about which pattern is going to be best for a certain task, which is so helpful. I really appreciate the quality of the resource. They also provide exercises at the end of the chapter which I think is super helpful for reinforcing concepts and keeping things interactive.'
+ },
+ {
+ name: 'James Ma',
+ link: 'https://www.amazon.com/gp/customer-reviews/RM0UKVO4TDJMQ/',
+ rating: 5,
+ title: 'Highly recommend to add this to your toolkit if you\'re developing Node.js applications',
+ text: 'I\'ve been developing for Node.js for a number of years, and this book helps me to understand concepts and things under the hood I’ve never had a chance to explore, all in a single source. I’m amazed that design patterns are covered with JS codes, as it shows me how to design and architect Node applications better to run at scale. Another thing I love is the hands-on aspects in guiding me to set up and run production-grade services such as task distribution, callbacks, concurrency and streams. Highly recommend to add this to your toolkit if you\'re developing Node.js applications.'
+ },
+ {
+ name: 'Valerio',
+ link: 'https://www.amazon.com/gp/customer-reviews/R236KX8KO84CBX/',
+ rating: 5,
+ title: 'Clean and well structured',
+ text: 'This book gets straight to the point, and there are many practical examples. You can find fundamentals and more advanced notions. Each chapter is well designed and the presentation of topics follows a well-structured logic.'
+ },
+ {
+ name: 'Or Hasson',
+ link: 'https://www.amazon.com/gp/customer-reviews/R34MMCIN98JI43/',
+ rating: 5,
+ title: 'Deep knowledge about Node.js',
+ text: 'I found this book very useful and knowledgeable. Great and clean up to date content. You can either read it in order or use it as a reference. Love it. Thank you'
+ },
+ {
+ name: 'Renan Truppel Ayoub',
+ link: 'https://www.amazon.com.br/gp/customer-reviews/R3TAC35N4GE0Z0/',
+ rating: 5,
+ title: 'Excelent content',
+ text: 'I am liking the book, it explains a lot of low level concepts of Node.js and the part of design patterns shows great exemples how to use the pattern explained, instead of just theory. Worth the purchase. I really recommend.'
+ },
+ {
+ name: 'Massimiliano C.',
+ link: 'https://www.amazon.it/gp/customer-reviews/R1UD3EH7PB4YRF/',
+ rating: 5,
+ title: 'Wonderful book, the best for Node.js. A book to have in your library',
+ text: 'A really well structured book, with clear and precise examples, aimed at explaining the concepts set out. Very complete and comprehensive, it covers practically all aspects and approaches of Node. Great Job for Mario and Luciano.'
+ },
+ {
+ name: 'Juan',
+ link: 'https://www.amazon.es/gp/customer-reviews/R2Q4HJEO6JDVTR/',
+ rating: 5,
+ title: 'Indispensable',
+ text: 'A book that I always recommend to junior developers or those who want to improve their skills with Node. Well structured and with the necessary content to understand how to work professionally with this language.'
+ },
+ {
+ name: 'NeoModulus',
+ link: 'https://www.amazon.com/gp/customer-reviews/R3DOZFPJ6EWFRL/',
+ rating: 5,
+ title: 'Deep dive into Node.js, JavaScript style',
+ text: 'An excellent book that covers many topics, including design patterns, with every example in JavaScript. The author does a great job of explaining each subject with multiple examples refactoring each into the optimal solution.'
+ }
+]
+
+export default reviews
diff --git a/src/_includes/convert-kit-form.njk b/src/_includes/convert-kit-form.njk
index 2443b0f..f47eade 100644
--- a/src/_includes/convert-kit-form.njk
+++ b/src/_includes/convert-kit-form.njk
@@ -467,7 +467,7 @@
.formkit-form[data-uid="831f119429"][min-width~="800"] .formkit-fields[data-stacked="false"] .formkit-field,
.formkit-form[data-uid="831f119429"][min-width~="700"] .formkit-fields[data-stacked="false"] .formkit-submit,
.formkit-form[data-uid="831f119429"][min-width~="800"] .formkit-fields[data-stacked="false"] .formkit-submit {
- margin: 0 5px 15px;
+ margin: 0 5px 15px 0;
}
.formkit-form[data-uid="831f119429"][min-width~="700"] .formkit-fields[data-stacked="false"] .formkit-field,
.formkit-form[data-uid="831f119429"][min-width~="800"] .formkit-fields[data-stacked="false"] .formkit-field {
diff --git a/src/_includes/layout.njk b/src/_includes/layout.njk
index 1e161a5..23cc3fb 100644
--- a/src/_includes/layout.njk
+++ b/src/_includes/layout.njk
@@ -204,7 +204,7 @@ eleventyComputed:
diff --git a/src/img/amazon-reviews-rating-screenshot.png b/src/img/amazon-reviews-rating-screenshot.png
new file mode 100644
index 0000000..45ef968
Binary files /dev/null and b/src/img/amazon-reviews-rating-screenshot.png differ
diff --git a/src/img/node-js-design-patterns-open-book-with-reactor-patterns-diagrams.png b/src/img/node-js-design-patterns-open-book-with-reactor-patterns-diagrams.png
new file mode 100644
index 0000000..ea93318
Binary files /dev/null and b/src/img/node-js-design-patterns-open-book-with-reactor-patterns-diagrams.png differ
diff --git a/src/index.html.njk b/src/index.html.njk
index cac197f..93c8b26 100644
--- a/src/index.html.njk
+++ b/src/index.html.njk
@@ -18,12 +18,13 @@ og_type:
-
-
Take your Node.js knowledge to the next level
-
Design and implement production-grade Node.js applications using proven patterns and techniques
+
+
+ Node.js Design Patterns: the ultimate guide to becoming a Node.js expert
+
The top-tier book for Node.js that will guide you from A to Z through the design and implementation of production-grade Node.js applications with tested patterns and techniques.
Master well-known design principles to create modern applications that are readable, extensible, and that can grow big
-
This book will teach you how to implement a series of best practices and design patterns to create efficient and robust Node.js applications.
-
The first chapters of the book are designed to explore the basics of Node.js, analyzing its asynchronous event driven architecture and its fundamental design patterns including control flow patterns with callbacks, promises and async/await.
-
The second part of the book dives into Node.js streams and explores some of the most famous Gang of Four design patterns reinterpreted in the context of Node.js plus some original patterns that are specific to JavaScript and Node.js.
-
In the last section this book covers more advanced topics such as Universal JavaScript with Node.js, React and Webpack, best practices to scale Node.js services, microservices and messaging patterns for enterprise-grade distributed applications.
-
Throughout the book you will see Node.js in action with the help of several real-life examples leveraging great technologies such as LevelDB, Redis, RabbitMQ, ZeroMQ and many others. They will be used to demonstrate a pattern or a technique, but they will also give you a great introduction to the Node.js ecosystem and its set of solutions.
+
If you are here, you have probably wandered a lot around the internet to find a valuable source to deepen your Node.js knowledge.
+
+
Maybe you have already used Node.js but you feel like you have not yet fully understood its key concepts.
+
+
You have read articles, and watched videos and webinars, but none of them have offered you a Node.js learning experience that seems complete.
+
+
What if we tell you that after a long search, you have finally landed on the right page?
+
+
You don't need to search for different sources and then put them together to obtain a detailed guide.
+
+
You need a comprehensive manual with TESTED content that guides you from A to Z in becoming a Node.js expert using both theoretical knowledge and practical exercises.
Node.js Design Patterns is the book for software engineers who want to master Node.js and implement production applications with confidence.
-
+
+
+ A Complete book that makes you confident with implementing scalable Node.js applications
+
-
-
-
150 Working examples & 50 exercises
-
With hundreds of working examples, you immediately put into practice everything you learn. Every code sample comes with a full step-by-step explanation, so you don't have to spend time to guess how things work. At the end of every chapter you will find engaging coding challenges to test your understanding of the various topics and gain more confidence with them.
-
-
-
-
13 Exquisitely crafted chapters
-
Every chapter will bring you one step closer to becoming a Node.js expert. From the basics of the Node.js architecture to how to scale and distribute your application, the book covers almost every aspect of professional Node.js development.
+
+
+
Are you keen to understand how Node.js works under the hood?
+
A guide that teaches you all the best practices that you need to know to grow your career.
+
You will finally understand how JavaScript and Node.js work and how to build performant and scalabale web applications.
+
You will find clear writing, diagrams, and real-world code examples, taking a deep dive into projects using technologies like Redis or Fastify.
+
All this will be possible thanks to Node.js Design Patterns: the first book that covers all the Node.js topics that you need to become a professional.
+
From theory to practice, from real-world exercises to useful best practices.
A good learning experience can't be achieved by only throwing code and notions at the reader. Node.js Design Patterns comes with in-depth explanations and examples, so that even a novice can follow and immediately take advantage of advanced techniques.
+
+ {% responsiveImage './img/man-with-node-js-design-patterns.png', 'Node.js Design Patterns book cover' %}
-
-
-
-
-
Get the free chapter
-
Behavioural Design Patterns
-
With this 54 pages long chapter you will learn how to implement and leverage some of the most well known behavioural design patterns in the context of Node.js:
- the Strategy pattern, the State pattern, the Template pattern, the Iterator pattern, the Middleware pattern, and the Command pattern.
-
-
- {% include "convert-kit-form.njk" %}
+
+
+
+
+
+ More than just Design Patterns: a book with Everything you need to know about Node.js
+
+
13 chapters carefully crafted to explore and master various aspects of Node.js professional development
+
+
+
+
Explore the basics of Node.js, analyzing its asynchronous event-driven architectures and design patterns (including event emitters, callbacks, promises and async/await);
+
Dive into Node.js streams and some of the most famous Gang of Four design patterns reinterpreted in the context of Node.js plus some novel patterns that are unique to JavaScript and Node.js;
+
Explore advanced topics such as Universal JavaScript with Node.js, React and Webpack;
+
Discover best practices to scale Node.js services, microservices and messaging patterns for enterprise-grade distributed applications;
+ What are the Benefits of choosing Node.js Design Patterns?
+
+
+
+
+
Get a 360° knowledge of the Node.js ecosystem
+
660 pages packed with deep knowledge of Node.js from a theoretical and practical point of view, to become a Node.js pro and apply what you discover to real-world projects.
+
+
+
+
Thoroughly test your understanding
+
You will find practical exercises at the end of each chapter to test what you have previously learnt with the theory.
+
+
+
+
Join a thriving Node.js dev community
+
Gain access to an active community on GitHub, where other developers who are reading the book share ideas, comments, and correct exercises together.
Meet Mario and Luciano, two passionate software engineers with a shared passion for Node.js and more than 20 years of collective experience on the field!
+
Meet Mario and Luciano, two passionate software engineers with a shared love for Node.js and more than 30 years of collective experience on the field!
Mario is a software engineer and entrepreneur who worked at IBM for a number of years. He currently splits his time between Var7 Technologies (his own software company) and its role as CTO at D4H Technologies where he creates software for emergency response teams.
+
Mario is currently the CTO of D4H Technologies, where he creates software for emergency management. In the past, Mario has worked at IBM as a team lead and also founded a couple of software companies.
Luciano wrote his first line of code at the age of 12 on his father's old i386. Since then, he has never stopped coding. He is working at fourTheorem as a Senior Architect where he is helping companies to get the best out of the Cloud and AWS. He is an active speaker and in the last few years he has delivered more than 130 talks.
+
Luciano is a Senior Architect at fourTheorem where he is helping companies to get the best out of the Cloud and AWS. He is an active speaker and in the last few years he has delivered more than 130 talks in conferences and meetups around the World.
For those who already know the basics of the JavaScript language and want to become a Node.js professional
+
+
For those who want to understand how the event loop works and learn to use Node.js to its full potential without errors and in the most efficient way
+
+
For those who want to learn how to adapt classic design patterns to Node.js and discover Node.js specific design patterns
+
+
For those who want to learn how to use production ready tools such as LevelDB, Redis, RabbitMQ, ZeroMQ in the Node.js context to develop real applications that can scale to millions of users
+
+
+
+
+
+
+
+
+ Why shouldn't you Miss this book?
+
+
+
+
+
+
+
+ Much more than just a textbook!
+
+
+
+ Node.js Design Patterns is a specific manual covering Node.js topics from A to Z.
+
You will have the opportunity of applying what you are learning with lots of exercises.
+
It is much more practical than a regular manual, just to make sure you understand actual market needs.
+
You will also have the possibility of connecting with an entire developers community on GitHub and the authors.
+
+
+
+
+ {% responsiveImage './img/node-js-design-patterns-open-book-with-reactor-patterns-diagrams.png', 'Node.js Design Patterns. open book showing some of the diagrams about the reactor pattern' %}
+
+
+
+
+
+ Are you ready to take your Node.js knowledge to the next level?
+
+ Developers' Favorite book to learn Node.js like a Pro
+
+
+
+
+
+ Node.js Design Patterns is the first book on the market that can help you become a Node.js professional not just with theory, but also with practical exercises, best practices and design patterns.
We know there's tons of material about Node.js on the internet. And some of the available content is actually good.
+
We just want to make sure you know that Node.js Design Patterns is the most complete book about Node.js available right now to help you become a professional.
+
Maybe you are not sure if the content will be clear and useful enough for your needs?
+
This is why we want to give you a gift… A free chapter from “Node.js Design patterns” to help you make an even more informed purchase decision.
+
+ 54 pages to learn how to implement and leverage some of the most well known behavioural design patterns in the context of Node.js: Strategy, State, Template, Iterator, Middleware, and Command Pattern.
+