Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
114 changes: 114 additions & 0 deletions Web Dev/Backend/Frameworks/JS based/Express JS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
## What is Express.js ❓
Express.js helps you build web applications by providing a set of tools and features that make it easy to handle HTTP requests and responses, create routes, manage middleware, and integrate with databases. It is a web framework application for 🎨 Node JS

## Why learn Express.js ❓
First of all, Express.js is easy to learn and use. It is highly flexible and can be used to build a wide range of web applications. Moreover, it is built of top of 🎨 Node JS making it more fast and efficient for building web applications.

## 🎓 Skills you can Master
After completing this learning path, you will be knowledgable in:
- Routing and middleware
- Authentication and Authorization
- Working with databases
- Automated testing
Comment on lines +9 to +12
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add a section about error handlers , error handling is probbaly the most important thing on a api


## 🛠️ Prerequisites

- A solid understanding of [**JavaScript**](../../Languages/JavaScript.md) fundamentals is essential.

- Knowledge of Node.js is essential since Express.js is built on it. You should know how to work with modules, create and run server-side JavaScript code, and interact with the file system.

- Strong knowledge about HTTP methods, status codes, headers, and cookies since HTTP powers the web.

- Basic understanding of the [**CLI**](../../../../Essentials.md) is important. This includes knowing how to navigate directories, create and edit files, and run commands.


## 📲 Installation and Setup

You need a code editor, browser and **Node.js** to follow along this learning path. You can choose the code editor and browser of your choice. The preferred ones are listed below:
- **VS Code**

Light-weight code editor by Microsoft with a large ecosystem of plugins to help your workflow

[Install VS Code ](https://code.visualstudio.com/download)
- **Google Chrome**

A browser based on V8 JavaScript engine with developer tools.

[Install Google Chrome](https://www.google.com/chrome/)
- **Node.js**

JavaScript runtime which helps you run JavaScript programs in your system.

[Install Node](https://nodejs.org/en/download/)

***Note:*** Install the stable version

This also installs npm(Node Package Manager) in the system which can be used for installing various dependencies, which are required for the development of the application, including Express.js

- **Express.js**

To install express.js on your device, first you should install node modules into your application. Then install express.js as a separate dependency. The following code can be implemented step-by-step in the terminal.

```
> npm install
> npm install express
```

## 💡 Learning Session

**Fundamentals of Express JS**
```
> Understanding Node Architecture
> Routing
> Middleware
> Views and templates
> Static files
> Node Package Manager (npm)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can provide info about yarn or pnpm here

```

**🧑🏻‍💻 Learn from**

Basically, Node.js and Express.js go hand-in-hand. So, all the tutorials for [**🎨 Node JS**](../../../FrontEnd/) can also be used for Express.js. Some other recommendations are:

*Video Tutorials*
- [Node.js Crash Course - NetNinja](https://www.youtube.com/playlist?list=PL4cUxeGkcC9jsz4LDYc6kv3ymONOKxwBU)
- [Node.js and Express.js full course - FreeCodeCamp](https://www.youtube.com/watch?v=Oe421EPjeBE)


*Articles/Blogs*

- [Express.js: Fundamentals, by Edureka](https://medium.com/edureka/expressjs-tutorial-795ad6e65ab3)

- [Official Documentation](https://expressjs.com/)
Comment on lines +80 to +82
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://mannhowie.com/clean-architecture-node

this is a blog about clean architecture please add this here 👀


## 🔖 Resource Pool

You can checkout these additional resources to learn more about Express JS

### Articles/Blogs
- [What is Express.js-Everything you need to know](https://kinsta.com/knowledgebase/what-is-express-js/)

### Videos
- [Express.js-Full Tutorial](https://www.youtube.com/playlist?list=PLp50dWW_m40Vruw9uKGNqySCNFLXK5YiO)
All the videos mentioned in Node.js can also be used

---
## 🚀 Project Pool

Here are few project ideas you can try out, these are just an inspiration to get started. Try to learn and build ideas that come to your mind.

- [Simple weather app using Node.js and Express.js](https://www.youtube.com/watch?v=nc3IoAiu-ew)

- A Blog App: It can be used for saving your various blogs or quotes in a database and view them when required. It can be implemented using Express and [Mongo DB](../../Databases/MongoDB.md)

*Working with external libraries:*
Other than the ones mentioned in the Node.js roadmap, you can try out integrating other APIs like:
- [Airtable API](https://airtable.com/developers/web/api/introduction): Create an extension for maintaining notes and storing it in the Airtable cloud.

- [OpenAI API](https://platform.openai.com/docs/introduction/overview): Try integrating chat gpt into a Node.js application [check it out](https://www.youtube.com/watch?v=_gQITRGs4y0).

*Don't limit yourself to these ideas. Feel free to explore your own and try them out*