shankardevy

shankardevy

Ash Framework Build Fast, Model Right (self-published)

Dear Elixir Alchemists

I’m happy to share that I’m working on my 2nd series of books (See my first one here) and this time it’s about Ash Framework. I have been using Ash lately for all my projects and I simply love it. It greatly reduces the amount of code that I write and helps me express my business requirements clearly once I understand how to use the Ash Framework.

What I noticed is that there aren’t enough structured learning resources for Ash Framework. Elixir Forum is a great place to get specific answers for problems you might encounter with Ash. I’m grateful for the Ash Core team who are always available to answer these questions. It’s my main learning resource. Ash Docs is a great place to look into for a detailed reference guide. Finally, the Ash Core team has recently released a book (currently in beta).

What I missed in my learning journey is, given a set of most common tasks that I would do in building an app, how can I get it done in Ash Framework. This is exactly what I’m covering in my upcoming books in the series Ash Framework Inside Out Series.

The first book “Ash Framework: Build Fast, Model Right” is in progress. With due respects to all the available resources that I have mentioned above, this book addresses the gap in quickly adopting Ash Framework. As there are ample resources for learning Phoenix and LiveView, this book exclusively focuses on Ash—helping you rapidly build models, relationships, migrations, and all types of simple to complex queries using an example of building a complete project management app.

The book covers more than 150+ common tasks that developers face in building applications using concrete examples.


What will you learn?

The book contains 10 different chapters with over 150+ learning objectives.

Ash Domain & Resources
Learn how to define structured data models using Ash. You’ll set up resources, organize data, and understand how Ash simplifies domain modeling.

Attributes
Define and manage data fields with type safety, default values, and constraints like required fields or unique values.

Relationships
Learn all the standard one-to-one, one-to-many, and many-to-many relationships, polymorphic associations the Ash way.

Aggregates
Fetch summarized data like counting tasks in a project or calculating averages without writing complex queries.

Calculations
Compute dynamic values, such as formatting names, calculating totals, or deriving statuses based on other fields.

Validations
Ensure data integrity by enforcing rules, like checking email formats, preventing empty fields, or restricting input ranges.

Identities
Set up unique identifiers like emails or usernames to prevent duplicate records and improve data consistency.

Actions
Learn to define how data is created, updated, deleted, or retrieved, using meaninful business-model related action names.

Changes & Preparations
Learn how to use Changes and Preparations to modify data before saving or modify how the data is fetched.

Notifiers
Trigger real-time updates, send emails, or call webhooks when data changes, making your app more interactive.

The book costs $39.95 when released but right now on pre-order, the book is available for ~40% discount at $23.95. Besides a great deal of savings, your pre-order is also a great motivation for me as I write this book. The book releases on 30 April, 2025. Preorder the book at:

with much regards to the community

Thank you
Shankar

Most Liked

zachdaniel

zachdaniel

Creator of Ash

I haven’t finished it yet, but it is very impressive! :clap:. Not that anyone should have doubted it, but I can vouch for the correctness and utility of at least the first 3rd of the book. Well done!

And of course @shankardevy, thanks for the shoutout :person_bowing:. Nothing makes me happier than seeing what people are able to accomplish with the tools that myself and the Ash community build :heart:

Will continue my read through this weekend :smiley:

EDIT: it may not have been clear, but I recommend this book for anyone who wants to use Ash to its fullest extent :fire:

shankardevy

shankardevy

Thank you to everyone who pre-ordered the book. I’m truly grateful for your trust and patience. I’ve just emailed the copies to all of you.

For others who are wanting to purchase the book, you can buy it now from devcarrots.com for a 20% special launch week discount!!

Happy learning Ash!

zachdaniel

zachdaniel

Creator of Ash

Very cool :heart:. So excited to have more resources for folks to learn and apply Ash! Best of luck on the book :tada:

shankardevy

shankardevy

@Nefcairon @Kallee it looks like a setting in Stripe not turned on for email confirmation to the buyer. I was not aware of this. I just turned on and hopefully all new purchases get a confirmation. Nevertheless, I have your email ids for the preorder even if you haven’t got the confirmation email from stripe. So be assured that you will receive an email from me when the book is finally released. Thank you!

shankardevy

shankardevy

hey @Nefcairon thanks for the follow up! Fingers crossed, I’m hoping to release by 30th April still. The book is in the final stages being edited and reviewed by my team.

We initially planned for 10 chapters and but now it has come to 16 chapters with 270+ pages without any images. The design team is working on inserting a few images to visually clarify some requirements discussed in the book which would make it 290+ pages. I’m eager as you are to release the book and can’t wait to see how it’s being used by the community. We are also releasing on Github a full fledged working app using Ash as part of the book. It contains more than 160+ tests and complex policies, relationships, aggregates and calculations.

It’s been a marathan sprint for me and my team in the last couple of weeks. I hope you will enjoy it when it is in your hands :-). In the worst case, those pre-ordered will get the latest version of the book on 30th April, if in case, the final editing is not yet complete in the next two days for full public release.

Where Next?

Popular in Books Top

PragmaticBookshelf
Sean Moriarity @seanmor5 edited by Tammy Coron @Paradox927 From finance to artificial intelligence, genetic algorithms are a powerful t...
New
DevotionGeo
https://www.packtpub.com/web-development/phoenix-web-development
New
PragmaticBookshelf
Bruce Tate @redrapids edited by Jacquelyn Carter @jkcarter Elixir is a functional language that crosses many boundaries. With a syntax b...
New
PragmaticBookshelf
Bruce A. Tate @redrapids and Sophie DeBenedetto @SophieDeBenedetto edited by Jacquelyn Carter @jkcarter The days of the traditional requ...
New
AstonJ
by Wolfgang Loder Learn and understand Erlang and Elixir and develop a working knowledge of the concepts of functional programming that...
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
peerreynders
An Outsider’s Guide to Statically Typed Functional Programming by Brian Marick This book is about using statically typed functional p...
New
AstonJ
by Joe Armstrong A multi-user game, web site, cloud application, or networked database can have thousands of users all interacting at th...
New
radar
:wave: You might remember me as the author of Joy of Elixir: https://forum.elixirforum.net/t/joy-of-elixir-self-published-free/ I’ve got...
New
slashdotdash
I’m working on a CQRS/ES and Phoenix book for those interested in building an event driven application using Elixir. The full so...
New

Other popular topics Top

lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
AstonJ
You’re a programmer, so you don’t need spoon feeding with the conventional drivel about “this is an integer.” No. You need to know what’s...
New
_russellb
I want to try my hand at web scraping. What tools/libraries do I need to use. I’m hoping to turn this into something professional so don’...
New
ycv005
I have followed this StackOverflow post to install the specific version of Erlang. And When I am running mix ecto.setup then getting fol...
New
malloryerik
Hi, this is for people who, like me, have had some friction using .html.heex templates in VSCode. The solution seems to be, in a hyphena...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
johnnyicon
Hi all, I've just started learning Elixir and Phoenix Framework, so please pardon my n00bness at this stage. I'm trying to use Postg...
New
lucidguppy
I have a super simple question about elixir - how would I take a file like this foo bar baz and output a new file that enumerates th...
New
Nvim
Elixir appears to be a superior language to Python. I don’t see any advantage of Python over Elixir. Are there any?
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New

We're in Beta

About us Mission Statement