# NPM & Express Cheat Sheet
Keep this page bookmarked! This cheat sheet contains the most common commands and syntax structures you will use daily as a Node.js Backend Developer.
---
1. NPM Commands (Terminal)
#
Initialize a new project:
bash
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Install production packages:
bash
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Install development tools:
bash
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Uninstall a package:
bash
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
---
The standard app.js file structure:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
---
Extracting Data from Requests:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Common Response Methods:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
---
Define a Schema & Model:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Common CRUD Queries:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
---
Hash a Password (bcryptjs):
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Verify a Password:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Generate JWT Token:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Custom Auth Middleware:
javascript
{ copied = true; setTimeout(() => copied = false, 2000) })" class="text-slate-400 hover:text-white p-1 rounded hover:bg-slate-800 transition relative flex items-center justify-center" title="Copy code">
Finish this Chapter
Save your progress on your learning path and prepare for coding interview challenges.
r.json()).then(res => { saving = false; if(res.success) { completed = true; $dispatch('lesson-complete'); } else console.error(res.error); }).catch(() => saving = false) }"
class="w-full sm:w-auto inline-flex items-center justify-center px-8 py-3.5 text-base font-bold rounded-xl text-white transition-all duration-300 transform hover:-translate-y-0.5 active:translate-y-0 shadow-lg"
:class="completed ? 'bg-emerald-500 hover:bg-emerald-600 shadow-emerald-500/15 dark:shadow-none' : 'bg-indigo-600 hover:bg-indigo-700 shadow-indigo-600/15 dark:shadow-none'">
Was this lesson helpful?
👍 Yes
👎 No
Thanks for your feedback! 🙏