Master Ash Framework [Ep. 1]: Project setup & User Authentication
Learn how Ash Framework transforms Elixir development with its declarative approach. In this episode, we set up a new Phoenix project with complete authentication in minutes using the ash-hq.com generator. We explore Ash's core architecture - understanding how Domains group Resources, and how Resources define both data structures and the actions we perform on them. Through hands-on IEx examples, we implement user registration, sign-in with JWT tokens, and session management using Ash's built-in authentication helpers. By the end, you'll understand why Ash eliminates authentication boilerplate while maintaining enterprise-grade security, setting the foundation for the multi-tenant SaaS application we'll build throughout this series. 00:00 Introduction - What is Ash Framework? 00:38 Reading Ash documentation & core philosophy 01:52 Using ash-hq.com project generator 02:06 Selecting project options & dependencies 04:47 Running the setup script 05:12 Verifying database setup with DataGrip 07:00 Opening VS Code & project structure 08:23 Understanding Domains & Resources 10:00 Exploring User resource & authentication 12:00 Actions - CRUD operations in Ash 13:01 Attributes & database schema 14:00 Database migrations overview 14:47 Testing in IEx - Creating first user 19:00 Verifying user in database 20:00 Testing sign-in functionality 24:00 JWT token verification 25:30 Pattern matching token claims 26:44 Getting user from token with subject_to_user 28:00 Next episode preview - Organizations & Multi-tenancy 💻 CODE: https://github.com/ElixirMentor/task_manager/tree/episode_01_setup 🔗 RESOURCES: Ash Docs: https://ash-hq.org AshAuthentication: https://hexdocs.pm/ash_authentication Discord: https://discord.gg/rsTARfP4xx 💪 SUPPORT ELIXIR MENTOR: https://elixirmentor.com YouTube Membership: https://www.youtube.com/channel/UChbS_z6KHQiIu9et38O37eQ/join #AshFramework #Elixir #Phoenix #Authentication #JWT #WebDevelopment #ElixirTutorial
Download
1 formatsVideo Formats
Right-click 'Download' and select 'Save Link As' if the file opens in a new tab.