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.
- Node.js (version 14 or higher)
- npm or yarn
- PostgreSQL (for database-related projects)
- Basic knowledge of JavaScript
The repository is organized by lesson/section numbers, with each folder containing a specific topic or project.
- Basic Node.js setup and usage
- Location:
2.1+Using+Node/
- Working with Node.js built-in modules
- Location:
2.2+Native+Modules/
- Introduction to npm package management
- Dependencies:
sillyname,superheroes - Location:
2.3+NPM/
- Building a QR code generator application
- Location:
2.4+QR+Code+Project/
- Setting up a basic Express server
- Technologies: Express.js
- Location:
3.1+Express+Server/
- Handling HTTP requests with Express
- Technologies: Express.js
- Location:
3.2+HTTP+Requests/
- API testing with Postman
- Technologies: Express.js
- Location:
3.3+Postman/
- Implementing Express middleware
- Technologies: Express.js
- Location:
3.4+Middleware/
- Building a secrets-sharing application
- Technologies: Express.js
- Location:
3.5+Secrets+Project/
- Introduction to EJS templating engine
- Location:
4.0+EJS/
- Using EJS tags and syntax
- Location:
4.1+EJS+Tags/
- Passing data to EJS templates
- Technologies: Express.js, EJS
- Location:
4.2+Passing+Data/
- Using EJS partials for reusable components
- Location:
4.3+EJS+Partials/
- Building a band name generator with EJS
- Technologies: Express.js, EJS
- Location:
4.4+Band+Generator+Project/
- Working with JSON data
- Location:
5.2+JSON/
- Making HTTP requests with Axios
- Location:
5.3+Axios/
- Implementing API authentication
- Technologies: Express.js, EJS
- Location:
5.4+API+Authentication/
- Building RESTful APIs
- Location:
5.5+REST+APIs/
- Advanced secrets application with APIs
- Location:
5.6+Secrets+Project/
- Building custom APIs
- Location:
6.0+DIY+API/
- Complete blog API application
- Technologies: Express.js
- Location:
6.1+Blog+API+Project/
- Introduction to NoSQL databases
- Location:
6(b)+nosql+database/
- Reading data from PostgreSQL
- Technologies: Express.js, EJS, pg (PostgreSQL driver)
- Location:
8.2+Postgres+READ/
- Building a travel tracking application
- Technologies: Express.js, EJS, pg
- Location:
8.3+Travel+Tracker/
- Extended travel tracker for families
- Technologies: Express.js, EJS, pg
- Location:
8.5+Family+Travel+Tracker/
- Basic authentication implementation
- Technologies: Express.js, EJS
- Location:
9.1+Authentication+Lv.1/
- Intermediate authentication
- Technologies: Express.js, EJS
- Location:
9.2+Authentication+Lv.2/
- Managing sessions and cookies
- Technologies: Express.js, EJS
- Location:
9.3+Sessions+and+Cookies/
- Using environment variables for configuration
- Technologies: Express.js, EJS
- Location:
9.4+Environment+Variables/
- Advanced authentication techniques
- Technologies: Express.js, EJS
- Location:
9.5+Authentication+Lv.3/
- Final secrets application with full authentication
- Technologies: Express.js, EJS
- Location:
9.6+Secrets+Project/
- A project for managing permanent lists
- Location:
Permalist+Project/
- Interactive quiz application for world capitals
- Technologies: Express.js, EJS, pg
- Location:
World+Capital+Quiz/
-
Clone the repository:
git clone <repository-url> cd full-stack
-
For each project, navigate to its directory and install dependencies:
cd <project-folder> npm install
-
Run the application:
npm start # or node index.jsNote: Some projects may require additional setup like database configuration.
- 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
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
This is a personal learning repository. Feel free to fork and modify for your own learning purposes.
This project is for educational purposes only.
Build with ❤️ by Jagrat Agrawal