You don't need HTML!

by Terence Eden published on

While browsing Mastodon late one night, I came across this excellent blog post called HTML is all you need to make a website. It describes a few websites which are pure HTML. No CSS and no JS.

And I thought… do you even need HTML to make a website?

A few hours later, I launched the NO-HT.ML website. Proving, once and for all, that you don't need HTML to make a beautiful1 responsive2, and useful3 website which everyone will love4.

you don't need HTML writing in ascii characters.

Go take a look and marvel at its magnificence - then come back here to discuss its profound importance.

How it works

If you look at the source code, you'll see it uses a tiny scrap of (mostly) invalid markup to kick things off.

<!doctype UNICODE> is a fake doctype. But it seems to be needed to convince some browsers into attempting to render the document.

<meta charset="UTF-8"> is real. Without this, text encoding sniffing takes places and some browsers just displayed rubbish.

<plaintext> is also a real HTML element. It was deprecated in HTML 2 back in the mid-1990s. What's particularly interesting is that the element cannot be closed. If you manage to find a website which lets you post HTML, that can be particularly fun!

From there, the page starts with some ASCII art. There are loads of text generators around. I remember when it used to take hours to hand-draw things like that.

Next is a bunch of Unicode abuse. There are loads of "letter-like" shapes. They're included for compatibility with rendering mathematical and scientific documents. There are also lots of punctuation marks - like bullets.

ASCII tables and flowcharts are pretty commonplace, although they sometimes go a bit wonky with non-fixed width characters.

And then, finally, the Arecibo message using the Geometric Shapes Extended Block.

Is this useful?

I've been reading "Reality is Broken" a book all about game design. In it, I found this quote:

Playing a game is the voluntary attempt to overcome unnecessary obstacles5.

It can be fun to give yourself arbitrary restrictions. In programming, there's a game called Code Golf - where players compete to solve a coding challenge in the fewest number of characters.

That's what's going on here. People are playing a game - the rules of which are "Do normal thing X without using normal thing Y".

I encourage all of you to play games. Go use your imagination to build something in a ridiculously restricted way. What do the constraints do to the way you express yourself? What sense of satisfaction do you get from successfully creating something in an impossible manner? What will you learn from experimentation?

But, above all, have fun and show off your beautiful messes.


  1. You ain't got no alibi
  2. In that it generates a violent response from web designers. 
  3. I assume it will be used as part of my insanity defence. 
  4. For some value of everyone
  5. Suits, The Grasshopper, 38. Katie Salen and Eric Zimmerman were among the first game researchers to outline these three characteristics as essential to a game, drawing on the work of Bernard Suits. Salen, Katie, and Eric Zimmerman. Rules of Play: Game Design Fundamentals (Cambridge: MIT Press, 2004). 

About Terence Eden

Terence Eden is a technology expert, open source coder, open data publisher, and freelance security consultant. He was formerly the UK Government's representative to the W3C. He speaks around the world on open standards, open source software, and open data. He also helped get four-and-a-half new emoji into Unicode. You can read his personal blog at shkspr.mobi/blog.

Website: shkspr.mobi