The Modifications I Make to Every New Phoenix Project
Make your life significantly easier with these simple modifications
John Curran
We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Make your life significantly easier with these simple modifications
John Curran
Ecto schema fields can't contain special characters because they map to database columns. Or can they?
John Curran
How do we generate PDFs of pages behind auth?
John Curran
Using Faker? HTML encoded characters will cause flaky tests. Here's how to fix them.
John Curran
How do we know which of our queries are the slowest? And how do we fix them?
John Curran
How do we use Phoenix LiveView's new async_assigns functions and helpers?
John Curran
A picture's worth a thousand words. It can be confusing to explain to a LiveView newbie just what the lifecycle of a LiveView process looks like. I made a flow chart to help visualize how an HTTP Request becomes a stateful LiveView
John Curran
How to decouple systems without losing the benefits of the compiler
John Curran
A story about German, covid, and man in the middle attacks
John Curran
I wept for all of my wasted hours time once I learned about this.
John Curran
Why aren't we using pattern matching at the start of every LiveView? Something never sat right about the connected?/1 function to me.
John Curran
Enable persistent up arrow history and CTRL-r reverse search across IEx sessions
John Curran
Magic link authentication has become an increasingly common way to sign in to web applications. Magic link authentication is where one receives a link in their email to sign in to a web application rather than enter their email and password (Slack is a popular example of this sign in flow)
John Curran
How to access conn assigns in the LiveView socket. Sharing assigns between plug, conn, and liveview socket
John Curran
Phoenix LiveView enables rapid development of interactive web apps. It's extremely powerful and an absolute pleasure to write every day. The LiveView paradigm differs from the traditional front-end/back-end split of most web apps written today. DOM updates happen through a persistent websocket connection instead of requiring a round-trip to a backend server.
John Curran