DEV Community

Hari Krishnan
Hari Krishnan

Posted on

Introduction to Full Stack Development

In this course, we will be building an e-commerce application using the below tech stack

  1. React
  2. Node with Express JS
  3. Mongo DB
  4. Typescript
  5. AWS Cloud [Amazon Web Services]
  6. Docker

React

React is a JavaScript library for building web applications, particularly for single-page applications. It is maintained by Meta (formerly Facebook) and a community of developers. React is known for its efficiency, flexibility, and component-based architecture, making it a popular choice for front-end web development.

Node.js

Node.js is an open-source, cross-platform runtime environment that allows you to execute JavaScript code on the server side, outside of a browser. We will use node with Express JS for our backend in this course.

Express JS

Express.js is a web application framework built on top of Node.js, which simplifies and organizes backend development by providing tools and features like routing, middleware, and HTTP request handling. With Express, you can easily structure your backend code for tasks like:

  1. Building RESTful APIs.
  2. Handling routes and defining endpoints.
  3. Managing middleware for request processing (e.g., authentication, logging, etc.).
  4. Integrating with databases (e.g., MongoDB, MySQL).
  5. Serving static files or data to the front-end.

By combining Node.js (for its runtime environment and asynchronous handling capabilities) with Express.js (for its organized and developer-friendly API), you can efficiently write and maintain the backend logic for your application.

Mongo DB

MongoDB is a NoSQL database that is designed for storing, managing, and retrieving large amounts of data in a way that is highly scalable and flexible. Unlike traditional relational databases (e.g., MySQL, PostgreSQL), which use tables and rows, MongoDB stores data in documents using a JSON-like format called BSON (Binary JSON).

Typescript

  1. TypeScript is a superset of JavaScript developed by Microsoft that adds static typing and other features to JavaScript.
  2. TypeScript code is transpiled into plain JavaScript, which can run in any environment that supports JavaScript (e.g., browsers, Node.js).
 let name: string = "John"; // Type-safe
 name = 42; // Error in TypeScript
Enter fullscreen mode Exit fullscreen mode

Prevents unintended bugs caused by incorrect data types or usage.

  function add(a: number, b: number): number {
    return a + b;
  }
  add(5, "10"); //
Enter fullscreen mode Exit fullscreen mode

There are lot of advantages in using typescript over javascript, let's look into it in detail later. But for now let's go ahead with Typescript.

Docker and AWS

What is Docker ?

Docker is an open-source platform that enables developers to build, package, and deploy applications in lightweight, portable containers. These containers include everything needed to run an application (code, runtime, libraries) and ensure consistency across environments.

AWS for Deployment

Amazon Web Services (AWS) is a comprehensive and widely adopted cloud computing platform offered by Amazon. It provides over 200 fully featured services from data centers globally, enabling individuals, companies, and governments to access on-demand computing resources.

We will be using AWS to deploy and make our application live for users across the globe.

Oh my god !!! Everything is new to me.

No worries. This course will teach you in detail every individual tech stack you see here. You don't have to go learn every single thing and then come build the application. We will be learning each technology here practically as we move forward.

You cannot learn every stack end-to-end spending hours, even if it is done so, you should implement it real-time to get expertise. This course will teach you what all base knowledge you should be having in each stack and domain so that you will be able to adapt to new technologies easily.

In addition to the above, you will also be gaining hands on expertise in

  1. Version Control [GIT]
  2. HTML/CSS
  3. Industry Best Practices for software development

Top comments (0)