Ask a mid-20s software engineer "why did you start coding?" - a non-trivial number will say "I was trying to make my
Tumblr look cool".
If they're a bit older, they might say Myspace. Older still, Geocities.
I feel like that there's a latent nostalgia for an earlier internet, where people had their own little space that
they could express themselves creatively.
So that's what this is - an attempt to, in the
words of HTML Energy,
show people that the web is still alive [and] to actively make the web more human and handmade.
.
Glitch A modern browser-based service for website building.
It's got extra bells and whistles like a proper page, auto-refresh, and multi-user collaboration. Recommended hosting option
Getting started with the web
- MDN This will guide you through installing basic software, HTML basics, CSS basics, and hosting. You'll get most of this "for free" by using Glitch's default website template.
mmm.page While I personally really like mmm.page, it's not entirely in the
spirit of the event to use it.
But it's great for building a fun site really quick. So... use this if you need to leave early, or if you really
don't want to touch HTML (😔)
If GitHub Gists could run. And AWS Lambda was fun. Val Town is a social website to write and deploy TypeScript.
Build APIs and schedule functions from your browser.
For quick and dirty rendering of simple dynamic content, you may not need the complexity of a templating language like Handlebars or a PHP backend.
[...]
You can write this directly in HTML—without IDs, classes, or querySelectors in your JS! Thanks to the document.currentScript property, we can refer to the currently running <script> element directly and go from there.
htmx is a library that allows you to access modern browser features directly from HTML, rather than using javascript.
htmz is a minimalist HTML microframework for creating interactive and modular web user interfaces with the familiar simplicity of plain HTML.
fixi.js is an experimental, minimalist implementation of generalized hypermedia controls
All 3 of these make it much easier to sprinkle in interactivity to a static HTML page.
They both offer the same primitive, swapping, where a HTML
response replaces an existing page element.
Swapping can get you pretty far, and pairs well with val.town HTML responses.
NB: htmz is by far the simplest of the 3, only offering swapping.
and you can click and drag it around and it will get synced!
🛋
playhtml wraps PartyKit which might be a better option if playhtml is insufficient.
@celine/celine
A microlibrary for building reactive HTML notebooks - by me (o˘◡˘o)
surreal
Just a super odd jQuery alternative. It gives you a me() selector that allows you to cram
script elements inline into other HTML elements, for maxiumum Locality of Behaviour (how cool!)
It's ideologically cut from the same cloth as htmx, htmz and fixi so it's designed to pair well with them too.
web components [give you] the ability to create custom elements: that is, HTML elements whose behavior is defined by the web developer, that extend the set of elements available in the browser.
React? No need. Use these instead. They're built into the browser.
Also good for avoiding CSS Classes.
Facet is a single-file web library that allows for the easy, declarative definition of web components. By making use of <template> elements with special attributes, Facet makes it possible to define useful and effective web components with no Javascript boilerplate, so you can focus entirely on the structure and behavior of your component.
Stampino is a fast and flexible HTML template system, where you write dynamic templates using real HTML <template> tags.
esm.sh, Skypack, UNPKG
Remember when I said NO BUNDLERS ALLOWED in the invitation?
Well you might need some way of importing JS libraries, right?
With the services linked above, you can import libraries directly from a CDN,
in a module
script,
using import
syntax. As an example:
Plain Vanilla
This is a good summary of everything I've listed so far on a nice
structured site, plus some cool stuff about routing that I don't think I've covered so far.
Fortunately, there's a growing community of people who share this nostalgia.
Diagram Website - An internet map has attempted to paint a picture of this
community (which is, unsurprisingly, quite decentralized).
Here's a subset of said map that may serve as decent inspiration: