diff --git a/Web Dev/Backend/Frameworks/JS based/Express JS.md b/Web Dev/Backend/Frameworks/JS based/Express JS.md index e69de29..526dfc0 100644 --- a/Web Dev/Backend/Frameworks/JS based/Express JS.md +++ b/Web Dev/Backend/Frameworks/JS based/Express JS.md @@ -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 + +## 🛠️ 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) +``` + +**🧑🏻‍💻 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/) + +## 🔖 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* + + + +