Skip to content

A focused exploration of Ash Framework actions through the lens of functional programming. Includes real-world examples of after_action, after_transaction, and monadic control flow using Funx.

Notifications You must be signed in to change notification settings

JKWA/ash-actions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MissionControl

A demo project exploring Ash Framework actions through functional programming concepts.

See the blog post Ash Framework: A Closer Look at Actions

This project demonstrates how Ash actions operate as Either pipelines, using superhero dispatch as a practical example of multi-resource operations, Kleisli composition, and closure under context.

Prerequisites

  • Elixir 1.15 or later
  • Erlang/OTP compatible with your Elixir version

Getting Started

  1. Clone the repository and navigate to the project:

    git clone https://github.com/JKWA/ash-actions.git
    cd ash-actions
  2. Install dependencies:

    mix setup
  3. Start the Phoenix server:

    mix phx.server

    Or run inside IEx for interactive exploration:

    iex -S mix phx.server
  4. Visit localhost:4000 from your browser.

Web UI

The app uses Ash Actions to enforce domain rules and report problems. A typical UI would hide invalid actions, this one does not. Instead, it allows all actions and reports domain errors.

Learn More

About

A focused exploration of Ash Framework actions through the lens of functional programming. Includes real-world examples of after_action, after_transaction, and monadic control flow using Funx.

Topics

Resources

Stars

Watchers

Forks