Series contents
Log in to track your progress
- 1. A worker to log stats from a YouTube’s API Episode
- 2. Querying Alexa Site API and parsing XML Episode
- 3. Adding Ecto and a Postgres database to StatWatch Episode
- 4. Putting an Elixir OTP app in our Elixir OTP app Episode
- 5. Launching StatWatch.me (side project) Episode
- 6. Planning a Phoenix web app for StatWatch Episode
- 7. From backend OTP app to Phoenix app Episode
- 8. Adding sessions and logins to StatWatch Episode
- 9. Password hashing and Ecto associations for StatWatch Episode
- 10. Permalinks and an admin auth plug for StatWatch Episode
- 11. Creating Ecto associations between profiles and stats Episode
- 12. Zero Dependency Pagination in Phoenix (Part 1) Episode
- 13. Zero Dependency Pagination in Phoenix (Part 2) Episode
StatWatch
StatWatch is a project that shows off some of Elixir's more unique strengths like using GenServers for running repeated, scheduled tasks right from the web server without needing a separate cron job or external service. It branches off from episode 11 of the Getting Started series, builds a simple Elixir worker to regularly fetch a YouTube channel's stats via JSON, another get Alexa site ranking data via XML and connects them to a database. Finally, it goes through creating a Phoenix 1.3 app and using the previously-built modules in it, adds users, auth, pagination and more.
Note: Most of this project can still be followed along with, but Alexa data is no longer available and Phoenix has had a few (though fortunately not too many) breaking changes since v1.3. If you follow this series, I suggest choosing another site to fetch stats from in place of Alexa. You'll still be starting first with the EEx-style templates in the tutorials since that's all that's built into Elixir, but you can try converting them to LiveView after creating the Phoenix app if you choose to use the current version instead of version 1.3.
Difficulty: Basic
Log in to track your progress