web_development_course_outline
web_development_course_outline
Course Overview
This course is designed to take students from JavaScript basics through to advanced web development
concepts. The curriculum combines theoretical knowledge with hands-on coding assignments and projects
to ensure students gain applicable skills for building real-world websites and web applications.
Learning Objectives
By the end of this course, students will be able to:
• Write and debug JavaScript programs using proper syntax and programming practices
• Understand HTML/CSS fundamentals and create well-structured web pages
• Manipulate the DOM and handle events in web applications
2. Restaurant Menu: Build an HTML page for a restaurant menu with sections for appetizers, main
courses, desserts, and beverages.
3. Event Registration Form: Create an HTML form for event registration that collects attendee
information.
2
Practical Lab
• Styling HTML elements with CSS
• Creating responsive layouts with Flexbox and Grid
2. Landing Page: Create a responsive landing page for a fictional product or service with a hero
section, features list, and contact form.
3. CSS Card Layout: Design a grid of cards showcasing team members or products that adjusts based
on screen size.
3
Week 4: JavaScript Data Structures and Control Flow
Session: Arrays, Objects, and Loops (1.5 hours)
4
Assignment 5
1. Interactive Image Gallery: Create an image gallery with thumbnails that display a larger image
when clicked.
2. Form with Dynamic Validation: Build a form with real-time validation feedback as users type.
3. Shopping Cart: Implement a simple shopping cart that allows adding items, updating quantities,
and calculating totals with data persisting in localStorage.
5
• Caching and optimizing API requests
Practical Lab
• Making API requests with Fetch and Axios
1. Movie Database App: Create an application that fetches and displays movie information from a
public API.
2. GitHub Profile Viewer: Build a tool that allows users to search for GitHub profiles and display
relevant information.
3. Currency Converter: Implement a currency converter that fetches real-time exchange rates.
2. Todo List App: Build a task management application with React, implementing adding, complet-
ing, and deleting tasks.
3. Product Listing Page: Create a component-based product listing page with filtering options.
6
Week 9: Advanced React Concepts
Session: React State Management and Routing (1.5 hours)
• Custom hooks
Practical Lab
• Implementing Context API for state management
2. Shopping Cart with Context: Implement a shopping cart using Context API for global state
management.
3. Theme Switcher: Create a theme switching functionality using Context that allows toggling be-
tween light and dark modes.
7
• Implementing routes and middleware
Assignment 10
1. API Server: Create a simple RESTful API with Express that serves JSON data.
2. File Upload Service: Build a Node.js server that handles file uploads and serves static files.
3. Backend Validation: Implement server-side validation for a registration form.
8
• Security best practices
• HTTPS and secure cookies
Practical Lab
Assignment 12
1. Authentication System: Build a complete authentication system with registration, login, and pass-
word reset.
2. Protected API: Create an API with both public and protected endpoints requiring authentication.
3. Admin Dashboard: Implement a simple admin area with role-based access control.
1. Full-Stack Todo App: Create a complete todo application with React frontend and Express/MongoDB
backend.
2. Image Upload Gallery: Build an image upload and gallery system with both client and server
components.
3. User Profile Dashboard: Implement a user profile system where users can register, login, and edit
their information.
9
Week 14: Testing and Debugging Web Applications
Session: Testing and Quality Assurance (1.5 hours)
• Environment configuration
• Frontend deployment (Netlify, Vercel)
• Backend deployment (Heroku, Railway)
• Database deployment (MongoDB Atlas)
10
• Setting up environment variables for production
Assignment 15
1. Production Deployment: Deploy a full-stack application to production platforms.
2. Social Media Dashboard: Create a platform where users can post updates, follow others, and
interact.
3. Content Management System: Develop a CMS for managing blog posts or articles with an admin
interface.
4. Project Management Tool: Build a tool for tracking projects, tasks, and team collaboration.
5. Recipe Sharing Application: Create a platform where users can share, search, and save recipes.
11
Assessment Structure
• Weekly Assignments (50%): Programming tasks and mini-projects
• Participation and Labs (10%): Engagement in online sessions and practical work
Online Resources
• freeCodeCamp: https://www.freecodecamp.org/
Additional Tools
• GitHub for version control and collaboration
• Visual Studio Code with extensions for web development
• Chrome DevTools for debugging
• Figma/Adobe XD for UI design mockups
12