Skip to content

jagrat2004/Full-Stack-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full Stack JavaScript Development Projects

This repository contains a comprehensive collection of projects and exercises of a full-stack. The projects cover fundamental concepts in Node.js, Express.js, templating with EJS, API development, database integration (both PostgreSQL and NoSQL), authentication, and more. Each section builds upon the previous one, providing hands-on experience in building web applications.

Prerequisites

  • Node.js (version 14 or higher)
  • npm or yarn
  • PostgreSQL (for database-related projects)
  • Basic knowledge of JavaScript

Project Structure

The repository is organized by lesson/section numbers, with each folder containing a specific topic or project.

Section 2: Node.js Fundamentals

2.1 Using Node

  • Basic Node.js setup and usage
  • Location: 2.1+Using+Node/

2.2 Native Modules

  • Working with Node.js built-in modules
  • Location: 2.2+Native+Modules/

2.3 NPM

  • Introduction to npm package management
  • Dependencies: sillyname, superheroes
  • Location: 2.3+NPM/

2.4 QR Code Project

  • Building a QR code generator application
  • Location: 2.4+QR+Code+Project/

Section 3: Express.js Basics

3.1 Express Server

  • Setting up a basic Express server
  • Technologies: Express.js
  • Location: 3.1+Express+Server/

3.2 HTTP Requests

  • Handling HTTP requests with Express
  • Technologies: Express.js
  • Location: 3.2+HTTP+Requests/

3.3 Postman

  • API testing with Postman
  • Technologies: Express.js
  • Location: 3.3+Postman/

3.4 Middleware

  • Implementing Express middleware
  • Technologies: Express.js
  • Location: 3.4+Middleware/

3.5 Secrets Project

  • Building a secrets-sharing application
  • Technologies: Express.js
  • Location: 3.5+Secrets+Project/

Section 4: EJS Templating

4.0 EJS

  • Introduction to EJS templating engine
  • Location: 4.0+EJS/

4.1 EJS Tags

  • Using EJS tags and syntax
  • Location: 4.1+EJS+Tags/

4.2 Passing Data

  • Passing data to EJS templates
  • Technologies: Express.js, EJS
  • Location: 4.2+Passing+Data/

4.3 EJS Partials

  • Using EJS partials for reusable components
  • Location: 4.3+EJS+Partials/

4.4 Band Generator Project

  • Building a band name generator with EJS
  • Technologies: Express.js, EJS
  • Location: 4.4+Band+Generator+Project/

Section 5: APIs and HTTP Requests

5.2 JSON

  • Working with JSON data
  • Location: 5.2+JSON/

5.3 Axios

  • Making HTTP requests with Axios
  • Location: 5.3+Axios/

5.4 API Authentication

  • Implementing API authentication
  • Technologies: Express.js, EJS
  • Location: 5.4+API+Authentication/

5.5 REST APIs

  • Building RESTful APIs
  • Location: 5.5+REST+APIs/

5.6 Secrets Project

  • Advanced secrets application with APIs
  • Location: 5.6+Secrets+Project/

Section 6: API Development

6.0 DIY API

  • Building custom APIs
  • Location: 6.0+DIY+API/

6.1 Blog API Project

  • Complete blog API application
  • Technologies: Express.js
  • Location: 6.1+Blog+API+Project/

6(b) NoSQL Database

  • Introduction to NoSQL databases
  • Location: 6(b)+nosql+database/

Section 8: PostgreSQL Database

8.2 Postgres READ

  • Reading data from PostgreSQL
  • Technologies: Express.js, EJS, pg (PostgreSQL driver)
  • Location: 8.2+Postgres+READ/

8.3 Travel Tracker

  • Building a travel tracking application
  • Technologies: Express.js, EJS, pg
  • Location: 8.3+Travel+Tracker/

8.5 Family Travel Tracker

  • Extended travel tracker for families
  • Technologies: Express.js, EJS, pg
  • Location: 8.5+Family+Travel+Tracker/

Section 9: Authentication and Security

9.1 Authentication Lv.1

  • Basic authentication implementation
  • Technologies: Express.js, EJS
  • Location: 9.1+Authentication+Lv.1/

9.2 Authentication Lv.2

  • Intermediate authentication
  • Technologies: Express.js, EJS
  • Location: 9.2+Authentication+Lv.2/

9.3 Sessions and Cookies

  • Managing sessions and cookies
  • Technologies: Express.js, EJS
  • Location: 9.3+Sessions+and+Cookies/

9.4 Environment Variables

  • Using environment variables for configuration
  • Technologies: Express.js, EJS
  • Location: 9.4+Environment+Variables/

9.5 Authentication Lv.3

  • Advanced authentication techniques
  • Technologies: Express.js, EJS
  • Location: 9.5+Authentication+Lv.3/

9.6 Secrets Project

  • Final secrets application with full authentication
  • Technologies: Express.js, EJS
  • Location: 9.6+Secrets+Project/

Standalone Projects

Permalist Project

  • A project for managing permanent lists
  • Location: Permalist+Project/

World Capital Quiz

  • Interactive quiz application for world capitals
  • Technologies: Express.js, EJS, pg
  • Location: World+Capital+Quiz/

Getting Started

  1. Clone the repository:

    git clone <repository-url>
    cd full-stack
  2. For each project, navigate to its directory and install dependencies:

    cd <project-folder>
    npm install
  3. Run the application:

    npm start
    # or
    node index.js

    Note: Some projects may require additional setup like database configuration.

Technologies Used

  • Backend: Node.js, Express.js
  • Frontend: EJS templating, HTML, CSS
  • Databases: PostgreSQL, NoSQL (MongoDB implied in some sections)
  • APIs: RESTful API design, Axios for HTTP requests
  • Authentication: Session management, cookies
  • Other: QR code generation, npm package management

Learning Outcomes

By completing these projects, you'll learn:

  • Server-side JavaScript with Node.js
  • Building web servers with Express.js
  • Templating with EJS
  • Database integration (SQL and NoSQL)
  • API development and consumption
  • Authentication and security best practices
  • Full-stack application architecture

Contributing

This is a personal learning repository. Feel free to fork and modify for your own learning purposes.

License

This project is for educational purposes only.


Build with ❤️ by Jagrat Agrawal

About

A hands-on collection of progressive projects and exercises focused on building real-world web applications. The repository will develop practical skills by working with server-side logic, APIs, databases, authentication, and dynamic user interfaces, while gradually applying concepts through structured modules and mini-applications.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors