Ash: 0 - Overview
Application.put_env(:ash, :validate_domain_resource_inclusion?, false)
Application.put_env(:ash, :validate_domain_config_inclusion?, false)
Mix.install([{:ash, "~> 3.0"}], consolidate_protocols: false)
Overview
In this tutorial you will create Ash Resources, query on them and use ETS as your data storage. You won’t be building an overarching application, instead you’ll build Resources that introduce you to Ash concepts.
IMPORTANT: This tutorial has been updated for the Ash 3.0 release candidates.
Each tutorial builds on top of the previous one, it is therefore recommended to start the tutorial sequentially from the beginning as each section introduces new concepts that will later be used.
The best way to follow the tutorial is reading the instructions in the tutorial, coming up with your own solution, and then verifying with the proposed solution. It is also recommended to not copy paste code.
The goal of this tutorial is to get you familiar with the basic concepts of Ash, and give you a good sense of what’s possible. It serves as a primer for the Ash documentation. Feel free to consult this documentation alongside the tutorial to learn more. That being said, the documenation shouldn’t be necessary to complete the tutorial.
Have fun!
- Resources
- Actions
- Querying
- Attributes
- Customizing Actions
- Relationships
- Code Interfaces
- Aggregates
- Calculations
Contributing?
Anything missing? Any errors? Tutorials out of date? Contributions are welcome!
When contributing, please follow the guidelines in diataxis.