# HTML 101

A practical HTML5 series built from real experience writing markup for documentation sites, tool dashboards, and static web pages across my projects.

HTML is the layer everything else rests on. Before I wrote Python, Rust, or React, I was writing plain HTML — structuring pages, wiring up forms, and learning the hard way why semantic markup matters. This series covers what I actually know and use, not a textbook tour.

## Articles

| Part                                                                                        | Topic                                                    |
| ------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| [Part 1](https://blog.htunnthuthu.com/getting-started/programming/html-101/html-101-part-1) | Document Structure — DOCTYPE, head, body, metadata       |
| [Part 2](https://blog.htunnthuthu.com/getting-started/programming/html-101/html-101-part-2) | Semantic HTML — Headings, text content, section elements |
| [Part 3](https://blog.htunnthuthu.com/getting-started/programming/html-101/html-101-part-3) | Links, Images, and Media                                 |
| [Part 4](https://blog.htunnthuthu.com/getting-started/programming/html-101/html-101-part-4) | Forms and User Input                                     |
| [Part 5](https://blog.htunnthuthu.com/getting-started/programming/html-101/html-101-part-5) | Accessibility, SEO, and Modern HTML5                     |

## Prerequisites

* A text editor (VS Code recommended)
* A browser
* No prior knowledge assumed

## How I Use HTML

Every project I ship that has a web interface starts with raw HTML — even if it ends up inside a React component or a Jinja template. Understanding the markup layer cleanly makes debugging browser issues, reading rendered output, and writing maintainable templates significantly easier.
