Welcome to the Web Development Mentorship Crash Course repository! This comprehensive six-week program is designed to take complete beginners through the fundamentals of web development, covering everything from the basics of how the web works to deploying your own web applications. Whether you are new to programming or looking to brush up on your web development skills, this course is for you.
- Practical Learning: Hands-on sessions and assignments for each module ensure you learn by doing.
- Comprehensive Curriculum: Covers HTML, CSS, JavaScript, Git and GitHub, Bootstrap, databases, backend development, and deployment.
- Mentorship: Receive guidance and feedback from experienced web developers.
- Resources: Includes links to additional learning materials from MDN and W3Schools.
- Web Foundations: Understand how the web works, build and style web pages with HTML and CSS.
- JavaScript: Learn the fundamentals of JavaScript, including functions, events, and DOM manipulation.
- Version Control: Master Git and GitHub for version control and collaboration.
- Responsive Design: Create responsive layouts using CSS Flexbox and Grid, and learn to use Bootstrap.
- Backend Integration: Set up databases and integrate them with your web applications.
- Deployment: Deploy your web applications to the internet using popular hosting services.
- Module 1: Web Foundations (Weeks 1-2)
- HTML and CSS basics and advanced topics.
- Module 2: JavaScript and Version Control (Weeks 3-4)
- JavaScript fundamentals, DOM manipulation, and Git/GitHub.
- Module 3: Backend Integration and Deployment (Weeks 5-6)
- Database integration, backend development, and deploying applications.
-
Session 1: How the Web Works
- Overview of the internet and the web
- Understanding web servers and clients
- How browsers work
- Hands-on: Setting up a local web server
- MDN: How the Web Works
- W3Schools: How the Web Works
-
Session 2: Introduction to HTML
- Basics of HTML
- HTML structure: tags, elements, attributes
- Creating a simple webpage
- Hands-on: Building a personal profile page
- MDN: HTML Basics
- W3Schools: HTML Introduction
-
Session 3: Advanced HTML
- Semantic HTML
- Forms and input types
- Multimedia elements: images, audio, video
- Hands-on: Enhancing the personal profile page with forms and multimedia
- MDN: HTML Forms
- W3Schools: HTML Forms
Assignment:
-
Create a personal homepage that includes a brief bio, a form to collect user information (name, email, and message), and at least one image and one video embedded.
-
Submmited Assigment
-
Session 1: Introduction to CSS
- What is CSS and how it works with HTML
- CSS syntax and selectors
- Applying styles to HTML elements
- Hands-on: Styling the personal profile page
- MDN: CSS Basics
- W3Schools: CSS Introduction
-
Session 2: Advanced CSS
- Box model, margins, padding, and borders
- Positioning elements: static, relative, absolute, fixed
- CSS Flexbox basics
- Hands-on: Creating a responsive layout
- MDN: CSS Layout
- W3Schools: CSS Layout
-
Session 3: CSS Grid and Responsive Design
- Introduction to CSS Grid
- Media queries and responsive design principles
- Hands-on: Creating a responsive photo gallery
- MDN: CSS Grid
- W3Schools: CSS Grid
Assignment:
- Style your personal homepage created in Week 1. Use Flexbox or CSS Grid to create a responsive layout, and ensure the site looks good on both desktop and mobile devices.
-
Session 1: Introduction to JavaScript
- What is JavaScript and its role in web development
- JavaScript syntax and basic programming concepts
- Variables, data types, and operators
- Hands-on: Adding interactive elements to the profile page
- MDN: JavaScript Basics
- W3Schools: JavaScript Introduction
-
Session 2: JavaScript Functions and Events
- Functions and scope
- Event handling
- DOM manipulation
- Hands-on: Creating a dynamic to-do list
- MDN: JavaScript Functions
- W3Schools: JavaScript Functions
-
Session 3: Advanced JavaScript
- Arrays and objects
- Loops and conditionals
- Introduction to APIs
- Hands-on: Fetching and displaying data from a public API
- MDN: JavaScript Arrays
- W3Schools: JavaScript Arrays
Assignment:
- Enhance your personal homepage with JavaScript. Add an interactive element such as a to-do list or a form validation feature. Fetch and display data from a public API (e.g., weather information for the user's location).
-
Session 1: Introduction to Git and GitHub
- What is version control and why it’s important
- Basic Git commands: init, add, commit, push, pull
- Introduction to GitHub and creating a repository
- Hands-on: Setting up a project on GitHub
- MDN: Getting Started with Git and GitHub
- W3Schools: Git Introduction
-
Session 2: Using GitHub for Collaboration
- Branching and merging
- Pull requests and code reviews
- Hands-on: Collaborating on a group project
- GitHub Docs: Collaborating with Issues and Pull Requests
-
Session 3: Introduction to Bootstrap
- What is Bootstrap and why use it
- Setting up Bootstrap in a project
- Using Bootstrap components and grid system
- Hands-on: Building a responsive landing page
- MDN: Bootstrap
- W3Schools: Bootstrap Introduction
Assignment:
- Create a new project repository on GitHub and push your personal homepage project to it. Use Bootstrap to redesign your homepage, incorporating Bootstrap components and the grid system to improve the layout and responsiveness.
-
Session 1: Introduction to Databases
- What is a database and why it’s important
- Overview of SQL vs NoSQL databases
- Hands-on: Setting up a simple MongoDB database
- MDN: Database Basics
- W3Schools: SQL Introduction
-
Session 2: Integrating Databases with Web Applications
- CRUD operations (Create, Read, Update, Delete)
- Connecting a web application to a database
- Hands-on: Building a simple guestbook application
- MDN: Working with Databases
- W3Schools: PHP MySQL
-
Session 3: Introduction to Backend Development
- Overview of backend technologies and languages
- Setting up a simple Node.js server
- Hands-on: Building a basic API with Node.js
- MDN: Express Web Framework (Node.js/JavaScript)
- W3Schools: Node.js Introduction
Assignment:
- Set up a simple guestbook application that allows users to submit their names and messages, stores these in a MongoDB database, and displays the entries on the webpage. Push your changes to the GitHub repository.
-
Session 1: Deployment Basics
- What is deployment and why it’s important
- Overview of hosting options (e.g., GitHub Pages, Netlify, Heroku)
- Hands-on: Deploying a static website to GitHub Pages
- MDN: Deployment
- W3Schools: How to Deploy Website
-
Session 2: Advanced Deployment Techniques
- Continuous Integration/Continuous Deployment (CI/CD)
- Setting up a CI/CD pipeline with GitHub Actions
- Hands-on: Automating deployment with GitHub Actions
- GitHub Docs: Understanding GitHub Actions
ADAMU MUHAMMAD MUHAMMAD
This work is licensed under a Creative Commons Attribution 4.0 International License.