Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5

Chris McCord7 HN recommenders · 2020–2025
237K views · tutorial · dated · Uploaded 2020-04-22

Phoenix creator Chris McCord builds a real-time Twitter-style app live with Phoenix LiveView 1.5 in about 15 minutes. It shows interactive, real-time updates without writing JavaScript.

HN points people to it as the demo that shows why LiveView and Elixir are worth a look.

Watch on YouTube

13 comments from Hacker News

@bigbassroller2020 · in “Ask HN: Go vs. Ruby/Rails for first time indie dev?”

> I don't like the idea of needing to learn both Elixir and Erlang You dont need to learn Erlang to use Elixir, rather you would need to know Elixir to use Phoenix; like you need to know Ruby to use Rails. Also you can build a Twitter timeline clone in under 18 minutes using Phoenix LiveView: [VIDEO]

RecommendsView on HN
@mercer2020 · in “Vue.js Creator Evan You Interview”

This one's also pretty good: [VIDEO] (Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5)

RecommendsView on HN
@realusername2020 · in “Ask HN: Best Talks of 2020?”

My favorite talk is the Live View twitter demo on my case: [VIDEO] . Never before I've been so bluffed by a new technology, he's building a small twitter clone in 20min with live reload, browser sync and everything, this would take days with any other traditional tech I know.

Strongly recommendsView on HN
@staticelf2020 · in “Ask HN: Best Talks of 2020?”

I think the "talk" by Chris McCord should apply here "Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5", while not really a talk this year was special and the demo completely blew my mind. it's available here: [VIDEO]

Strongly recommendsView on HN
@realusername2020 · in “Ruby 3.0 and the new FiberScheduler interface”

> But I'm wondering if it brings enough other advantages that I shouldn't view it that simplistically. So to start with, Phoenix LiveView really is a game changer, you should have a look at Elixir just for that. This is the talk which really bluffed me when I first saw it: [VIDEO] . For the other upsides, I like a little bit better the way everything is architectured in Phoenix, there's much less magic and it's easier to follow the data flow and what is going on.

Strongly recommendsView on HN
@sodapopcan2021 · in “StimulusReflex, or LiveView for Rails”

Even with tooling getting better, you're still faced with creating an API to the backend that has a high chance of your frontend being the only ever consumer of it. You're also faced with duplicating logic on both front and backends in many scenarios (though of course this can be mitigated with a node backend? I don't know... I've never used node). As for latency, this is over websockets. It becomes a problem if you are connecting to a server across the ocean but otherwise, it's incredibly fast and feels just as snappy as JS. I actually also haven't used Stimulus Reflex, just Phoenix LiveView so I'm not sure if they are exactly the same, but the TL;DR is that they are sending VERY tiny payloads over websockets. This video explains it well (though it's also a demo of LiveView): [VIDEO]

RecommendsView on HN
@brobdingnagians2021 · in “Birdwatch Overview”

Good place to post the "Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5" ;) [VIDEO]

@frellus2021 · in “Why Erlang?”

Yes and no. The real answer (with an Erlang bias) is to look at Elixir + Phoenix + LiveView. Here's a neat demo. No JavaScript required. [VIDEO]

RecommendsView on HN
@dmitriid2021 · in “Remix: On Rails”

> 16 years ago, David Heinemeier Hansson (DHH) took the stage and delivered one of the most impressive code demos the world has ever seen. 16 years later there's no tech stack that can replicate this demo (except Elixir LiveView [1]). And yet we're told tech has progressed. [1] [VIDEO]

@dmitriid2023 · in “Phoenix Dev Blog – Streams”

Liveview solves the "write a fully dynamic and interactive application with next to zero Javascript that you need to write by hand" or, if you will, "server-driven UI apps". And it's hard to overstate, but to also properly explain, how important this is and how it feels like magic when you do it. Because it lets you tap into everything Elixr (and Erlang VM) have to offer on the backend without ever having to think of "how the hell do I bring all that to the client". My use-cases are: a big chunk of data is being processed, and while its being processed regular updates are sent over PubSub. Most actions a user initiates are long-ish-running and their updates are also sent over PubSub. Things that other users are doing are sent over PubSub and possibly need to be reflected in the UI. In "traditional" JS-on-the-client-whatever-on-the-server model you have a plethora of questions of how to get that to UI: which endpoints to query, which updates to send over the wire, the formats, the frequence, authorisation, auth... With LiveView your "client" is an Elixir view living on the server which just updates the view based on those PubSubs (or timers, or Kafka streams, or user-initiated actions, or...) and LiveView takes care of upating the DOM/HTML in the browser. "Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5" will give a good overview of this: [VIDEO] [1] Built-in in Phoenix, [LINK]

RecommendsView on HN
@sph2023 · in “Dynamic Forms with LiveView Streams”

The Live View demo or the Rails one? :-) Rails, it was this one 17 years ago: [LINK] Live View, I'm not sure which is the first demo. There's "Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5" ( [VIDEO] )

@himangshuj2023 · in “Ask HN: Who is hiring? (August 2023)”

HamiltonPractice, REMOTE, INTERNS, ~1000$ pm, 3 months HamiltonPractice is an AI Practice Manager built on the cutting-edge stack. We optimize and encrypt every HTTP call to automate complex healthcare and financial data operations. Our web stack is built on top of Elixir Phoenix MQTT protocol, and our backend processing works on distributed Postgres pub-sub to build efficient and fault-tolerant platforms. We are looking for full-stack functional programmer interns who could join us full-time. Prior experience in open-source projects and functional programming is plus but optional. Assignment (Waived for anyone with meaningful open-source web experience including but not limited to GSOC) Build an authenticated website on elixir live-view ( [LINK] , tutorial [VIDEO] ). After logging, the user name should be displayed on the logged-in page. There should be an icon on the password button to change the password element to text. Bonus points on deploying the code to fly dot io. Interest candidates please email to hh AT hamiltonpractice.com

@vmchale2025 · in “Ask HN: Which functional language for full stack web development?”

I've been impressed but what I've seen of the Phoenix web framework. [VIDEO] On the F# side: "Where are the F# jobs? I've checked the various FP-centric job-sites - they're as barren as everywhere else. It almost seems as if Haskell jobs are more plentiful! Haskell!" [LINK]