About this Project
This project started from a desire to learn about web development
To do so, I asked Chat GPT to design a curriculum and introduce topics gradually
The result is this abomination, part documentation, part learning exercise
Original Prompt
Remember our first chat, you designed and delivered a Python course from basics to more advanced topics, giving me tasks, but minimal code so I could try to work things out for myself?
Could you design and teach something similar, but logically introducing HTML, JS and CSS as they each become relevant? It's all good and well for me to ask for a webpage, but I'd rather learn and understand the fundamentals so I can do it myself.
Course Overview: HTML, CSS, JS - The Practical Way
Philosophy:
- Teach concepts when they're needed
- Avoid code dumps—minimal scaffolding, you fill in the gaps
- Real-world project mindset (not abstract examples)
- You build and explore, I guide and clarify
Stage 1: HTML - The Structure
Lesson Topics Covered Task 1. The Skeleton Basic HTML tags: <!DOCTYPE>
,<html>
,<head>
,<body>
,<h1>
-<p>
Create a page with title, heading, and paragraphs 2. Lists & Links <ul>
,<ol>
,<li>
,<a href="">
Add ordered/unordered lists and internal/external links 3. Images & Semantic Tags <img>
, alt text,<header>
,<nav>
,<main>
,<section>
,<footer>
New page with local + remote images, semantic structure Stage 2: CSS - The Styling
Lesson Topics Covered Task 4. Intro to CSS External stylesheet, inline vs internal, selectors Style your current pages: colors, fonts, spacing 5. Box Model & Layout Margin, padding, borders, width/height, display
Style your sections; practice spacing and layout 6. Classes & Reuse Class selectors, avoiding repetition, DRY Refactor repeated styles using classes 7. Flexbox Intro display: flex
, alignment, spacing, directionAlign nav links, arrange content side by side Stage 3: JavaScript - The Behavior
Lesson Topics Covered Task 8. First Script <script>
, variables,console.log()
Add a script that prints or interacts with your page 9. Events & DOM onclick
,document.querySelector()
, manipulating contentAdd a button that changes text/image/etc 10. Forms & Input <input>
,addEventListener
, basic validationAdd a form that responds to input Bonus Modules
- Responsive design (media queries)
- CSS Grid
- JavaScript modules
- File structure & deployment
- Accessibility best practices
- Integrating APIs (weather, GitHub, etc.)
Structure So Far
index.html
– Landing page: Navigation and Readmelessons\html\lesson-1-the-skeleton.html
- Lesson 1: The Skeletonlessons\html\lesson-2-lists-and-links.html
- Lesson 2: Lists and Linkslessons\html\lesson-3-images-and-semantic-tags.html
- Lesson 3: Images and Semantic Tagslessons\html\template.html
- Template: Basic HTML Layout for further Lessonslessons\css\
- Placeholder Folder for CSS lessonslessons\javascript\
- Placeholder Folder for Javascript Lessonsimg\
- Directory for ImagesCurrent Status
You're at the end of Lesson 3, about to begin Lesson 4: Intro to CSS.