React, Flux, GraphQL, Hack, HHVM...? All of this and more!
DHTML is a term that was used in the late 90s and early 2000s to describe any kind of functionality that were somehow out of the realm of regular web site browsing. This went from dropdown navigations to snow flakes falling from the top of the screen to birds flying out of a banner to follow your cursor. It was really just a hard-to-define buzzword like Web 2.0 was later on.
This lead to a lot of effort in creating, at worst, completely separate implementations for each of these. In some cases you even needed tweaks for MacOS and Windows versions of the same browsers, because the codebases were separate. Truly horrible times.
Since that time there have been multiple waves of improvements in front end web technologies, such as CSS3, HTML5, jQuery. In 2004 Gmail and AJAX ushered in a new level of expectation for web applications to the mainstream, followed by Google Maps a year later. All of this lead to the rich web applications we have today.
In 2013 Facebook introduced their Open Source library React. It focused only on creating user interfaces, instead of being a complete front end framework. It introduced many new ideas, including a virtual DOM and and a rather novel JSX syntax.
Through 2014 and 2015 React gathered more momentum and is now a common word echoing through established web design agencies as well as startups. Together with the module bundler Webpack React is being used to create code that resembles DHTML code from 1999 more than jQuery based code from 2009.
There is also a trend of discouraging the use of CSS in React components. This does not mean that you would drop styling, but dropping the use of cascading stylesheets with classes and identifiers. This sounds like a pretty stark departure from the de-facto anti-inline practises we've had since the popularisation of CSS.
Cascading stylesheets obviously have their uses in site building, but for individual components the likes of Radium, React-JSS and JSXStyle might indeed have their place. Even if getting used to the idea takes a while, computing element styles in the browser is as powerful as it has always been.
Separation of concerns be gone! We all components now, baby!
Considering all of the above discussing DHTML and React being somewhat similar, it is worth considering a DHTML script from 2001 (kudos to Sumppi):
By todays standards it might be crude, but it has everything bundled together and is quite a stand alone component in itself. For an added curiosity factor, the Googlebot renders the Kaunis.to scroller nowadays:
The circle has closed. Long live DHTML!Tweet