Ash Framework

Ash is enabling experienced solo devs to produce full enterprise-grade applications in a matter of weeks.

It's an internal Elixir DSL which is effectively an extensible domain modelling language that you can introspect and generate DB schemas, APIs, UIs, documentation, and more from.

If you've ever used Smalltalk or explored Moldable Development, Ash will feel familiar. It has that same quality of making the system understandable and manipulable at a higher level of abstraction. But unlike those predecessors, Ash runs on the BEAM and ships to production.


Why Ash Matters Now

The timing is significant. As AI gets better at generating code, declarative systems become more valuable, not less. AI can reason about explicit domain models. It can generate code that conforms to well-defined structures. Ash gives you that structure.

Most frameworks optimise for writing code. Ash optimises for understanding and generating code. That's a different game entirely.


Getting Started

In order of time commitment:

  1. Ash HQ: The official documentation and guides
  2. The Essence of Ash Framework: My overview of what makes Ash different
  3. Ash Framework: An Animated Introduction: Visual walkthrough of the core concepts

My Ash Talks


Zach Daniel's Talks

Zach Daniel is the creator of Ash. His talks are essential viewing:


Learning Resources

Elixir Mentor (Jacob Luetzow)

Jacob Luetzow's YouTube channel is the largest Elixir YouTube channel with practical Ash tutorials and deep dives.

Notable content:

  • Interview with Barnabas Jovanovics (Ash core engineer)
  • Interview with Zach Daniel on building the framework
  • Step-by-step Ash tutorials

Books

Ash Framework book cover

Ash Framework: Create Declarative Elixir Web Apps by Rebecca Le and Zach Daniel

The official book covering everything from first principles to production patterns. I wrote the foreword.


Clarity

I built Clarity, an interactive visualiser for Ash domain models.

It introspects your Ash resources and generates:

  • Live documentation
  • Architecture diagrams
  • Links back to source code
  • Real-time updates as you edit

If you remember Rational Rose or TogetherJ, it's that idea, but it actually works. The domain model becomes a living, navigable artifact rather than documentation that's perpetually out of date.


Let's Talk Ash

I'm always happy to chat about Ash, especially with people exploring declarative approaches to domain modelling, or thinking about how AI changes what frameworks should look like.

Get in touch →