A Real-Time Phoenix LiveView App for Soccer Matches

@mssantosdev and I implemented a distributed real-time app for soccer matches as an experiment. We’ll share a post soon, but check it out what we have so far https://twitter.com/norbajunior/status/1589950754315726850?s=20&t=7jF8890I9TNlRvKXNAhpZQ

Github Actions for Elixir CI

A critical ingredient for modern development teams is a regularly run set of code checks. If it’s up to every developer to run code tests and checks locally before pushing code, you know it will be forgotten at some point. This leaves it as a problem for someone else to cleanup later. Uncool!

We want the benefits of modern Continuous Integration (CI) workflows for our Elixir projects. This guide lays out a good starting point that teams can customize to suit their needs.

https://fly.io/phoenix-files/github-actions-for-elixir-ci/

The Complete Guide to Full-text Search with Postgres and Ecto

This epic article covers implementing efficient full-text search, result ranking, query modifiers, query testing, and so much more!

https://www.peterullrich.com/complete-guide-to-full-text-search-with-postgres-and-ecto

Ecto.DevLogger v0.7.0

This release is notable by adding a Ecto.DevLogger.PrintableParameter protocol which allows printing yet not supported types and even user-defined postgrex types.

Also, it contains various small fixes.

Links:

ThinkingElixir 123: Ash Framework Models Resources

Episode 123 of Thinking Elixir. Creator of the Ash Framework, Zach Daniel, shares how he feels Ecto is such a good tool, that people haven’t built a modeling layer above it and end up using Ecto directly. Ash models a resource above Ecto, making it more expressive while supporting LiveView, REST, and GraphQL interfaces on top. While cutting boilerplate, a major goal builds in escape hatches to keep from being boxed in. Ash Framework recently celebrated a 2.0 release, accompanied by the release of the Ash HQ website. A fun look into the achievements and philosophy that make the Ash Framework what it is today!

https://podcast.thinkingelixir.com/123

Sanitize Strings in Elixir with Pattern Matching and Recursion

Let’s use two great features in Elixir - recursion and binary pattern matching - to sanitize a string. https://blog.appsignal.com/2022/11/01/sanitize-strings-in-elixir-with-pattern-matching-and-recursion.html

🏃‍♂️ Sharing strava stats with elixir and github actions

I implemented a small script that gathers Strava stats and commits weekly to my GitHub profile using GitHub actions and elixir. To know more visit: https://github.com/gilacost/gilacost/blob/master/ventures/STRAVA_SUMMARY.md

The Curse of Test Fixtures

Be extremely mindful of the API boundaries of your code. Test the boundaries and NOT the implementation.

https://mikezornek.com/posts/2022/10/fixture-rant/

Contenteditables in Phoenix LiveView

https://mave.io/blog/contenteditables-in-phoenix-liveview

LiveMotion v0.3.0

I just released LiveMotion v0.3.0. If you like animations, check it out. 🍿 https://github.com/benvp/live_motion

Cross Site Scripting (XSS) Patterns in Phoenix

Have you had to deal with XSS vulnerabilities in an Elixir application? Walk through four different examples of vulnerable code in this blog post.

https://paraxial.io/blog/xss-phoenix

Remote Development in Elixir with Gitpod 🍊

Remote development is getting more traction lately. However, support for Elixir and Phoenix could be better. I wrote a post on how to get up and running with Elixir and Gitpod.

https://benvp.co/blog/remote-development-in-elixir-with-gitpod

Recreating Chris McCord's LiveView Chirp demo with stenography

Stenography isn’t just for the courtroom. It can be used for coding Elixir, too! I recreated Chris McCord’s Chirp demo, where he created a Twitter-style timeline application with LiveView, but leveraged the power of Plover stenography and vim Ultisnips to get it done! Check out the steno demo video.

ThinkingElixir 122: Securing Elixir and Teaching the Team

Episode 122 of Thinking Elixir. It’s important to learn safe coding practices. As developers, we want people to love our products and happily pay to use them. We also want to protect our services and users from hackers and information leaks. However, sometimes we unknowingly create vulnerabilities in our systems. One of the best ways to prevent problems is to train the team working on the project. To help do this, Holden Oullette started an OpenSource project called Elixir Secure Coding Training for teams. Livebook based, the lessons can be forked and customized for what’s relevant to our projects. Check out what’s already available! There’s more work and lessons to create. People are invited to jump in and help out. The goal is to create an education and training resource for the Elixir community!

https://podcast.thinkingelixir.com/122

Phoenix Keynote Commentary

I figured I’d run through Chris McCord’s Phoenix Keynote from ElixirConf 2022 and note my thoughts.

https://www.youtube.com/watch?v=QwuBi57ySoM

Probuild-ex : Create a league of legends pro players build trackers with elixir Part 5

Final part of my series to create a probuild tracker for the game league of legends using elixir, phoenix, liveview and friends.

Parameter Library

Parameter is a library for dealing with parameter serialization, deserialization and validation following a structure very similar to Ecto schema. Check it out!

Oban Starts Where Tasks End

Our latest article strives to answer the question, “why do we need background jobs in Elixir when we have tasks?”

https://getoban.pro/articles/oban-starts-where-tasks-end

Join the Mastering LiveView Workshop at CodeBEAM America 11/1

This six hour virtual workshop gets you ready to ship production LiveView and covers all of the latest and greatest features from LiveView 0.18. Taught by Programming Phoenix LiveView co-author Sophie DeBenedetto and BeamRad.io co-host Steven Nunez. https://codebeamamerica.com/trainings/mastering-liveview/

Elixir Meetup #10 Curiosum ▶ Joshua Plicque ▶ VIDEO

Check out the 3 secrets of Joshua Plicque to Unlocking Elite Developer Productivity! https://youtu.be/1KqxFMhKyJc

Previous page Next page