Asha Kanini

Web Development 2.0 Course Curriculum

S.No Topic Subtopic Detail/Content
1 Recap 1.1 HTML & CSS Recall the basics of HTML and CSS.
1.2 Scripting in Web Pages Understand what scripting is and how to add JavaScript code to HTML pages to make them dynamic.
2 Programming in Javascript 2.1 Basics of JavaScript JavaScript syntax and how JavaScript code is interpreted and executed.
2.2 Variables & Data Types Understanding variables and constants; different data types; using let and const; adding comments; introduction to JavaScript objects and the concept of JSON.
2.3 Operators Overview of arithmetic, assignment, string, comparison, logical, and ternary operators.
2.4 Introduction to Functions Function syntax (declaration, expression, and arrow functions); function calls; passing parameters; and returning values.
2.5 Conditional Statements Using if, if-else, and else if statements to make decisions in code.
2.6 Loops Implementing iteration using for and while loops.
2.7 Arrays & Array Methods Declaring and initializing arrays; using array methods such as push() and pop() to add and remove elements; searching arrays using indexOf(), find(), and includes().
2.8 Exception Handling in JavaScript Displaying errors in the console; handling errors using try-catch blocks; and printing error details for debugging.
2.9 Iterators Iterating through arrays using for and forEach() loops; filtering and transforming arrays using filter(), map(), and reduce().
2.10 Asynchronous Functions in JavaScript Understanding callbacks, promises, and asynchronous programming using async / await constructs.
3 Database concepts & MySQL 3.1 Introduction to Databases and creating a MySQL Database Introduction to databases and relational database concepts; creating a database in MySQL; understanding primary keys and the concept of indexing in tables.
3.2 CREATE, INSERT, DROP Using CREATE TABLE, INSERT, and DROP statements in MySQL; defining foreign keys and adding constraints; altering tables by adding/removing columns or modifying data types; removing constraints.
3.3 UPDATE and DELETE Using UPDATE and DELETE statements to modify and remove records in MySQL tables.
3.4 SELECT Queries in MySQL Writing SELECT queries with WHERE and ORDER BY clauses; exploring different query techniques.
3.5 Touch pads (capacitive touch) Trigger inputs by touching conductive surfaces.
3.5 Using JOINs in MySQL Understanding table joins; types of joins such as INNER JOIN and LEFT JOIN.
4 Front end 4.1 EJS (Embedded JavaScript) Understanding Embedded JavaScript (EJS); syntax, examples, and rendering EJS pages through a server.
4.2 DOM (Document Object Model) Understanding the DOM and its tree structure in an HTML document; modifying the content and style of HTML elements using JavaScript.
4.3 Elements & Methods in DOM Using DOM properties and methods such as getElementById() and innerHTML; finding and manipulating elements by ID, tag name, or class name.
4.4 Events & Event Listeners in DOM Handling user interactions such as onclick and onchange events; using the addEventListener() method.
4.5 DOM Forms Validating HTML form elements using JavaScript.
4.6 CSS frameworks : Bootstrap Understanding CSS frameworks; including Bootstrap in a project; designing responsive pages using Bootstrap; implementing Bootstrap UI components such as grids, carousels, and collapsible sidebars.
5 Server 5.1 Introduction to Node.js, Express.js & Cygwin Installing Node.js, Express.js, and Cygwin; learning Cygwin commands; creating a simple server using Express.js.
5.2 Introduction to APIs Understanding APIs; adding routes to an Express server; rendering EJS pages for specific routes.
5.3 Client - Server Architecture Understanding client–server interaction and basic network protocols; concepts of request and response cycles.
5.4 Types of Networks Understanding network types such as LAN, WAN, and the Internet; differentiating local networks from the Internet; understanding the concept of localhost and running a server locally.
5.5 HTTP Requests and Responses Understanding HTTP GET and POST requests; sending data via request parameters or body; types of data sent in HTTP requests; HTTP response status codes; sending responses from a server.
5.6 HTTP vs HTTPs Understanding Internet security risks; SSL certificates and how they work; self-signed vs CA-signed certificates.
5.7 Using Node Modules What Node modules are; installing and importing Node modules; using modules within a project.
5.8 Handling Requests and Responses on the Server Adding routes to handle HTTP GET and POST requests in Express.js; sending appropriate responses and status codes.
5.9 Connecting to a MySQL Database Using the mysql2 module to connect to a MySQL database; executing and processing queries; handling query-related errors.
5.10 AJAX Using AJAX to send asynchronous HTTP requests to the server.
5.11 Security and Authentication on the Server Using the bcrypt module to encrypt passwords; validating user login credentials; restricting access to routes based on user roles stored in the database.
6 Building a full stack application 6.1 Designing Web Pages Designing UI layouts; selecting an appropriate CSS framework; identifying and implementing UI components required for the project.
6.2 Creating Required Database Tables Structuring project data into MySQL tables; selecting primary and foreign keys; defining relationships and joins; understanding normalized data design.
6.3 Wiring Requests and Responses on the Server Designing the interaction flow between the user interface and the server.
6.4 Logs and error handling Understanding the importance of logging; using tools such as console.log, PM2, and other modules to record and monitor activity.
6.5 Debugging and Testing Identifying common coding errors and debugging techniques; using the Node.js debugger; writing and executing test cases; testing APIs using Postman; and using browser developer tools for troubleshooting.