shankardevy

shankardevy

Phoenix Inside Out (series of books/booklets) (self-published)

I am happy to announce that I am completing final rounds of my Phoenix book (which is now a series of books/booklets).


###Mastering Phoenix Framework

####Chapter 1 - Getting Started
Get introduced to Phoenix and learn Phoenix conventions, use of View modules, control flow for a simple page.

####Chapter 2 - Just Enough Elixir
Learn minimal Elixir that’s just enough to work with Phoenix. Covers general expectations on Elixir language, Data types, Operators, Control structures, Modules and functions, OTP basics, Pattern matching

####Chapter 3 - Kickstarting Mango
Setting up TDD and introduction to Hound

####Chapter 4 - Product Catalog
Learn to create dynamic pages, introduction to Ecto and import seed data from CSV file.

####Chapter 5 - Register, Login, Logout
Learn Ecto migrations, Ecto.Changeset, router pipeline, Phoenix HTML form helpers, writing module plugs and testing plugs.

####Chapter 6 - Cart
Learn new concepts Ecto Embedded schema and associations and revisit all of the knowledge gained in Chapter 5 to create a full fledged cart with AJAX functionality.

####Chapter 7 - Checkout
Learn to refactor routes for authenticated and unauthenticates routes, Ecto migrations for modifying existing schema and table, use of multiple changesets for a single schema.

####Chapter 8 - My Profile and Preference
Learn Phoenix CRUD generator mix task phx.gen.html and why not to use them for most cases. Learn how to use Gettext for translating interface language.

####Chapter 9 - Admin I
Learn how Phoenix.Token and how to generate and validate tokens. Create a passwordless login using Phoenix Token and learn to create and use function plugs.

####Chapter 10 - Admin II
Explore how to customize the phx.gen.html generator templates and an introduction to multiple sources of truth with Phoenix Context.

####Chapter 11 - Mango Robot
Learn basics of Channel communication and the various components involved in creating Phoenix channels. Learn to authenticate channels using Phoenix Token and use socket to persist data across multiple messages to the server.

####Chapter 12 - Deployment
Learn to deploy in Ubuntu server using

  1. Mix
  2. Distillery Release
  3. Distillery Release with Docker

Total number of pages: 376 (in PDF format)
Available Format: PDF, EPUB, MOBI

See posts in this thread for details on the others :slight_smile:


Learn more at: http://shankardevy.com/phoenix-book/

Most Liked

shankardevy

shankardevy

Excited to announce that I have launched the full release of Phoenix Inside Out series.

Currently it contains 3 books and 1 booklet. Read more here.

shankardevy

shankardevy

As an update to my Phoenix Inside Out book, I am happy to announce that a demo site is now available at http://mango.shankardevy.com

This is exactly the same commerce site that you will learn to build when you read my book Phoenix Inside Out apart from learning to build a mini-Phoenix framework and learning Practical Ecto.

Looking forward to your comments!

sinanto

sinanto

I’m an early buyer of Shankar’s books. First of all, he made me understand what “context” is all about. Garuda was a real surprise and quite enlightening. Ecto, clarifies a lot of things. And Phoenix book has every little detail about developing an ecommerce site. I bought the “Coach Edition” and get excellent support from him. Highly recommended, 5 stars.

Where Next?

Popular in Books Top

PragmaticBookshelf
Alexander Koutmos Bruce A. Tate @redrapids Frank Hunleth @fhunleth edited by Jacquelyn Carter @jkcarter The Elixir programming langua...
New
akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New
PragmaticBookshelf
Bruce Tate @redrapids edited by Jacquelyn Carter @jkcarter Elixir is a functional language that crosses many boundaries. With a syntax b...
New
benwilson512
by Bruce Williams and Ben Wilson Your domain is rich and interconnected, and your API should be too. Upgrade your web API to GraphQL, le...
New
Eiji
The Ecto recipes were originally written for the “What’s new in Ecto 2” ebook and then made open-source by Plataformatec. Since then, the...
New
PragmaticBookshelf
Peter Ullrich (@PJUllrich) edited by Michael Swaine @michaelswaine Data is at the core of every business, but it is useless if nobody ca...
New
PragmaticBookshelf
Tony Hammond Series editor: Bruce A. Tate @redrapids Developmental editor Jacquelyn Carter @jkcarter Data is everywhere—it’s just not ...
New
tristan
Adopting Erlang is a collaborative effort between myself (Tristan), Fred Hebert and Evan Vigil-McClanahan. It is an ongoing effort to gat...
New
kokolegorille
https://www.packtpub.com/application-development/mastering-elixir A new resource, it seems… I did not read it (yet?). Anyone?
New
PragmaticBookshelf
Ellie Fairholm and Josep Giralt D’Lacoste edited by Nicole Tache The days of separate dev and ops teams are over—knowledge silos and the...
New

Other popular topics Top

mcarvalho
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43757 214
New
jay1
Why is it that the mnesia database isn’t the most preferred database for use in Elixir/Phoenix?
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
hariharasudhan94
Lets say I have map like this fetching from my database %{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New
dokuzbir
I want to highlight html closing tags when i click a html tag. That works in .html files but doesnt work for html.eex templates. How can...
New
svb
Hi! Currently I want to submit a form by pressing the Enter key. However, since my input field is of type “textarea” this is just adds a...
New

We're in Beta

About us Mission Statement