We can't find the internet
Something went wrong!
Beyond Borders
Website overview
I created this website for Live The Adventure so that invited users can preview their documentary film “Beyond Borders”.
The admin area allows staff to manage user invites and view stats showing who’s watched the film. The front end allows invited users to log in and watch the film.
Security measures prevent logins from being shared, so that only invited users can view the documentary.
About Beyond Borders
More people have been to space than flown around the world in a single prop plane. And this was not lost on pilot and film maker Juan-Peter Schulze (JP) and Travel Vlogger Louis Cole as they set off on a dangerous mission to circumnavigate the world in a single-engine, 1974 Cessna T210L airplane named Baloo.
This adventure wasn’t just to see if it was possible, but to experience the many cultures and societies that make up our beautiful planet. The trip was emotionally and physically draining, pushing them to their limits and forcing the pair to face situations which, if handled badly, could have had dire consequences.
From losing critical equipment over oceans, past the point of no return, to confronting fighter jets at ten thousand feet on the other side of the world. This is Beyond Borders.
Technical implementation
The vue front end is performant and fully responsive. It communicates via REST with the Phoenix Framework back end. Authentication uses JWT tokens, managed through Vuex and guardian. Images are served responsively using a custom component that selects the best version based on rendered width and device pixel ratio. On the backend, ex_rated handles rate limiting, while guardian manages session token creation and validation. Together along with manual session monitoring, they make credential sharing impractical.
Thoughts and feelings
Phoenix and Vue are my go-to choices for projects like this. The development cycle is fast, the runtime is solid, and the combination of Elixir’s concurrency model with a reactive frontend means I can tackle tricky problems, like session security and video access control, without fighting with the framework. It’s a pairing I keep coming back to as both frameworks make development speedy and efficient.