Skip to content

Natours, a learning project where I've explored the fundamentals of Node.js and Express for backend development

Notifications You must be signed in to change notification settings

stefan-dudu/natours-app

Repository files navigation

Natours - Node.js and Express Learning Project

Welcome to Natours, a learning project where I've explored the fundamentals of Node.js and Express for backend development. Throughout this journey, I've covered a diverse range of topics, from Node.js core modules to advanced MongoDB features, aiming to build a strong foundation in creating robust and scalable web applications.

Screenshot 2

What I've Explored

Fundamentals of Node.js

  • Gained an understanding of Node.js basics and core modules.
  • Explored NPM (Node Package Manager) for managing dependencies.

Node.js Behind the Scenes

  • Learned how Node.js works behind the scenes, including the event loop, blocking vs non-blocking code, event-driven architecture, streams, and modules.

Express Framework

  • Mastered the fundamentals of Express, covering routing, middleware, sending responses, and more.

RESTful API Development

  • Designed and developed RESTful APIs with advanced features such as filtering, sorting, aliasing, and pagination.

Server-Side Rendering

  • Implemented server-side website rendering (HTML) using Pug templates.

MongoDB Database

  • Performed CRUD operations with MongoDB locally and on the Atlas platform (in the cloud).
  • Dived into advanced MongoDB topics like geospatial queries, the aggregation pipeline, and operators.

Mongoose - MongoDB JS Driver

  • Explored the fundamentals of Mongoose, covering data models, CRUD operations, data validation, and middleware.
  • Learned advanced Mongoose features, including modeling geospatial data, populates, virtual populates, indexes, and more.

MVC Architecture

  • Understood and implemented the Model-View-Controller (MVC) architecture in applications.

NoSQL Databases

  • Learned how to work with data in NoSQL databases, exploring advanced data modeling techniques, relationships between data, embedding, referencing, and more.

Authentication with JWT

  • Implemented complete modern authentication with JSON Web Tokens (JWT).
  • Covered user sign up, log in, password reset, secure cookies, and other security-related features.

About

Natours, a learning project where I've explored the fundamentals of Node.js and Express for backend development

Resources

Stars

Watchers

Forks