The document discusses using the ClojureScript framework re-frame to build single page applications. It provides background on the speaker and intended audience. It then compares JavaScript and ClojureScript, discussing characteristics like permissiveness, expressiveness, and top-down vs bottom-up design approaches. It introduces re-frame and how it uses a data-oriented design with events as data to manage application state. Code size is kept small with advanced compilation techniques. The document demonstrates re-frame by building a cryptocurrency prediction app.