▶Book Description
Phoenix is a modern web development framework that is used to build API's andweb applications. It is built on Elixir and runs on Erlang VM whichmakes it much faster than other options. With Elixir and Phoenix, youbuild your application the right way, ready to scale and ready for theincreasing demands of real-time web applications.
This book covers the basics of the Phoenix web framework, showing you how to build acommunity voting application, and is divided into three parts. In thefirst part, you will be introduced to Phoenix and Elixir and understandthe core terminologies that are used to describe them. You will alsolearn to build controller pages, store and retrieve data, add users toyour app pages and protect your database. In the second section youwill be able to reinforce your knowledge of architecting real timeapplications in phoenix and not only debug these applications but alsodiagnose issues in them. In the third and final section you will havethe complete understanding of deploying and running the phoenixapplication and should be comfortable to make your first application release.
By the end of this book, you'll have a strong grasp of all of the core fundamentals of the Phoenix framework, and will have built a full production-ready web application from scratch.
▶What You Will Learn
⦁ Learn Phoenix Framework fundamentals and v1.3's new application structure
⦁ Build real-time applications with channels and presence
⦁ Utilize GenServers and other OTP fundamentals to keep an application stable
⦁ Track users as they sign in and out of chat with Phoenix's built-in presence functionality
⦁ Write your own database interaction code that is safe, bug-free, and easy to work with
⦁ Explore testing and debugging methodologies to understand a real software development lifecycle for a Phoenix application
⦁ Deploy and run your Phoenix application in production
▶Key Features
⦁ Build a strong foundation in Functional-Programming techniques while learning to build compelling web applications
⦁ Understand the Elixir Concurrency and parallelization model to build high-performing blazingly fast applications
⦁ Learn to test, debug and deploy your web applications using Phoenix framework
▶Who This Book Is For
This is for people who have started messing around with Elixir and have enjoyed what they've seen! We'll take those skills and apply them to building a full web application. If you have some knowledge of Elixir and have experience with other web frameworks in other languages and want to see what it's like to build a web application where concurrency and performance are first-class citizens, you're in the right place!
▶What this book covers
⦁ Chapter 1, A Brief Introduction to Elixir and Phoenix, goes over the basics of developing in Elixir and Phoenix and makes the readers understand some of the basic constructs available.
⦁ Chapter 2, Building Controllers, Views, and Templates, covers working with the fundamentals of every Phoenix application.
⦁ Chapter 3, Storing and Retrieving Vote Data with Ecto Pages, discusses working with data in our database.
⦁ Chapter 4, Introducing User Accounts and Sessions, begins to introduce the concept of Users into our system and introduces working with login, logout, and session management.
⦁ Chapter 5, Validations, Errors, and Tying Loose Ends, explores working on tightening up our application through validation, error-handling, and general tweaks.
⦁ Chapter 6, Live Voting with Phoenix, starts building out a real-time application with Phoenix and JavaScript.
⦁ Chapter 7, Improving Our Application and Adding Features, continues to build upon the solid foundation of our application and brings it closer to production-ready.
⦁ Chapter 8, Adding Chat to Your Phoenix Application, adds even more real-time feature support.
⦁ Chapter 9, Using Presence and ETS in Phoenix, teaches readers to use Phoenix's new Presence support to keep track of what users are logged in or logged out of our system.
⦁ Chapter 10, Working with Elixir's Concurrency Model, takes readers through how Elixir handles concurrency implementations at a deeper level.
⦁ Chapter 11, Implementing OAuth in Our Application, implements a new way for users to sign in with providers such as Twitter and Google.
⦁ Chapter 12, Building an API and Deploying, outlines finishing reading our application, adding an API to interact with our application, and finally finishing deploying our application to production.