SONUB home EN English 한국어 日本語 中文 हिन्दी বাংলা اردو Español Português Français Deutsch Русский العربية Bahasa Indonesia Tiếng Việt ไทย Türkçe

How to enable notifications

Notifications are unavailable in this browser or on this address. Try a supported browser on the secure SONUB site.

If notifications are blocked, allow them in your browser settings.

  1. Open the site controls beside the address bar, or your browser’s site settings. Set Notifications for this site to Allow.
  2. In your device settings, allow notifications for your browser and check Do Not Disturb or Focus.
  3. Return to SONUB, reload the page, and use the bell to enable notifications.

On iPhone or iPad, add SONUB to your Home Screen, open it there, then allow notifications.

All Vibe Coding topics
VIBE CODING

HTML

The document the web is made of.

is not programming. It is a way of writing a document while telling the what each part is — this is a heading, this is a paragraph, this is a link. Learn eight and you can already write a real page, and everything a browser shows you is one of these files.

HTML is the skeleton, not the whole body

A page is made of three languages with three different jobs. Keeping them apart is what makes a site possible to change later.

HTML — structure What each part is: heading, paragraph, list, button. Written once, and it stays meaningful even with every style stripped away.
CSS — appearance How it looks: colour, spacing, size, layout, and what changes on a small screen. Written in a style block or a separate . file.
JavaScript — behaviour What happens: reacting to a click, fetching data, changing the page after it has loaded. Written in a script block or a separate .js file.
button.html
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <title>Button example</title>
    <style>
      body { font-family: sans-serif; padding: 2rem; }
      button { padding: 0.6rem 1.2rem; border-radius: 999px; }
    </style>
  </head>
  <body>
    <h1 id="title">Clicked 0 times</h1>
    <button onclick="count()">Click me</button>

    <script>
      let n = 0;
      function count() {
        n = n + 1;
        document.getElementById('title').textContent = 'Clicked ' + n + ' times';
      }
    </script>
  </body>
</html>

This one file holds all three. Save it, open it, and click the button — the heading counts up. Try deleting the style block: the page still works, only plainer. That is the point of keeping the three separate.

You mark this yourself. Nothing is graded here.

Mark this step as understood?

This cannot be undone yet, so mark it only when you really understand.

Marked as understood

You mark this yourself. Nothing is graded here.