ABES PRIME BATCH - Full Stack Development Course
Welcome to the ABES PRIME BATCH repository for the Full Stack Development Course. This repository contains day-wise folders, each covering different topics related to Full Stack Development.
📅 Daily Updates
Day 1 : Introduction to Web Development & Git Basics
- Overview of Git & GitHub for version control.
- Setting up a repository, adding files, and handling commits.
- Common Git Commands like
git init, git add, git commit, and git push.
- Basic HTML, CSS, and JavaScript concepts.
Day 2 : HTML Fundamentals
- Text Formatting & Decoration
- Using
<b>, <i>, <u>, <small>, <del>, <ins>, <mark>, <code>, <blockquote>, and <abbr> for different text styles and emphasis.
- Lists & Addressing
- Creating ordered (
<ol>), unordered (<ul>), and description lists (<dl>).
- Using the
<address> tag for contact details.
- Tables
- Structuring a weekly timetable using
<table>, <tr>, <th>, <td>, colspan, and rowspan.
- Forms & Input Handling
- Building a registration form using
<form>, <input>, <label>, <select>, <textarea>, and <button>.
- Implementing form validation with
required attributes.
Assignments:
Day 3 : JavaScript Basics & CSS Specificity
1. HTML & Styling Basics
- CSS specificity order:
inheritance < browser < universal < tags/elements < class < id < inline < !important
2. JavaScript Fundamentals
- Variable Declarations:
var: Function-scoped, can be redeclared and reassigned.
let: Block-scoped, can be reassigned but not redeclared.
const: Block-scoped, cannot be reassigned or redeclared.
- Comparison Operators:
== (Loose comparison): Compares values but ignores types.
=== (Strict comparison): Compares both values and types.
Day 4 : JavaScript Functions, Arrays, Loops & Objects
1. Functions in JavaScript
- Function Hoisting: Functions are hoisted, allowing them to be called before their declaration.
- Function Types:
- Function Declaration: Traditional function definition.
- Function Expression: Can be named or anonymous, assigned to a variable.
- Arrow Functions (
ES6+): Concise syntax with implicit return for single expressions.
- Nested Functions & Scope: Inner functions are accessible only within their parent function, maintaining encapsulation.
2. Arrays
- Creation:
const arr = [value1, value2, ...]
- Operations:
.push(), accessing by index, updating values.
- Incorrect Practices: Sparse arrays (empty indices),
delete leaves holes.
3. Loops
- For Loop:
for (init; condition; increment) {}
- For-in: Iterates over object keys.
- For-of: Iterates over array values.
- While & Do-While Loops: Execute based on conditions.
4. Objects
- Definition: Key-value pairs
{ key: value }.
- Operations: Access (
obj.key or obj["key"]), update, delete.
- Dynamic Access: Access properties dynamically using
obj[key].
Day 5: Callbacks & Array Methods
- Callbacks & Higher-Order Functions: Functions passed as arguments to other functions, enabling flexible execution.
- Student Grading System: Implemented using callbacks to calculate percentages, highest scoring subjects, and grades dynamically.
- forEach & map:
forEach: Iterates over an array, applying a function to each element.
map: Returns a new array with transformed values.
- reduce: Aggregates an array into a single value, useful for sum, multiplication, and custom operations.
- Use Cases: Implemented
reduce to calculate sum, product, and modify arrays like forEach and map.
Day 6 : DOM Basics & Manipulation
DOM Basics:
- Understanding
document and window objects.
- Selecting elements using:
getElementById(), getElementsByClassName(), getElementsByTagName()
querySelector(), querySelectorAll()
- Modifying styles dynamically (
color, backgroundColor, textDecoration).
DOM Manipulation:
- Accessing and navigating elements using
.children and .style properties.
- Changing text content dynamically using JavaScript.
- Iterating over elements using
Array.from() and forEach().
- Creating, appending, and removing elements (
appendChild(), removeChild()).
- Using
innerText and innerHTML for dynamic content updates.
Day 7 : JavaScript Events & DOM
- Form Events: Captured
onchange, onkeydown, and onkeyup events for user input.
- DOM Manipulation: Created dynamic cards using
document.createElement and event listeners.
- Event Handling: Click events changed card and text background colors with
stopPropagation().
- Background Change: Button triggered random color changes for the webpage.
- Styling: Applied hover effects, shadows, and transitions for better UI interaction.
- Form Handling: Captured form submissions, validated unique emails, and dynamically added user data.
- Dropdown Filtering: Populated
<select> options dynamically based on unique city names.
- Card Display: Rendered user details as cards with delete functionality.
- Data Filtering: Displayed cards based on selected city, updating UI accordingly.
- DOM Updates: Used
innerHTML and event-driven rendering for seamless UI updates.
Day 9 : Async Callbacks and Promises
- Event Listeners – Handling asynchronous events using
addEventListener.
- setTimeout – Delays execution of a function using browser-provided
setTimeout().
- Callback Functions – Executing functions within functions, handling asynchronous operations.
- Real-world Asynchronous Case – User authentication, payment handling using callbacks and promises.
- Promises – Understanding
fetch(), .then(), .catch() for handling API responses.
- DOM Manipulation – Fetching and displaying data dynamically using JavaScript.
- Local Storage – Storing fetched API data in
localStorage for persistence.
Day 10: YouTube Clone Mini-Project
This project replicates a basic YouTube UI with video playback and history tracking using HTML, CSS, and JavaScript.
A beginner-friendly project showcasing DOM manipulation, event handling, and LocalStorage. 🚀
- HTML: Multi-page structure (
index.html, video.html, history.html), navbar, search bar, and sidebar.
- CSS: Flexbox, Grid, icons, dark theme UI.
- JavaScript:
- Dynamic Video Embedding: Uses
iframe with URL parameters.
- Watch History: Stores viewed videos in LocalStorage.
- Dummy Data for Videos: Simulates API response.
- YouTube API Setup.
For any queries, feel free to reach out:
- 📩 Email: ishanvi.chauhan@gmail.om
- 🔗 LinkedIn: https://www.linkedin.com/in/ishanvi-chauhan/
Happy Coding! 🚀