home.social

#ashframework — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #ashframework, aggregated by home.social.

  1. AshLua has been released! Easily and safely provide #AshFramework actions to a lua script to be called in your application 😎. Works via the very excellent lua library by @[email protected]!

  2. A core tenet of #AshFramework is to "Model your domain, derive the rest". And the "rest" is often some kind of code generation or compilation step, which makes your actions accessible over some interface. AshGraphql builds an Absinthe schema for GraphQL support. 👇

  3. Started using #AshFramework for a personal project, it is going well (and works pretty well). Still learning so we will see how it will go once I need less « magic » and more logic though but I think I understand the direction it will go already

    At the same time I moved to a Forgejo instance, and I’m trying out a bit of jj!

    #MyElixirStatus #ElixirLang #Elixir

  4. Started using #AshFramework for a personal project, it is going well (and works pretty well). Still learning so we will see how it will go once I need less « magic » and more logic though but I think I understand the direction it will go already

    At the same time I moved to a Forgejo instance, and I’m trying out a bit of jj!

    #MyElixirStatus #ElixirLang #Elixir

  5. Started using for a personal project, it is going well (and works pretty well). Still learning so we will see how it will go once I need less « magic » and more logic though but I think I understand the direction it will go already

    At the same time I moved to a Forgejo instance, and I’m trying out a bit of jj!

  6. Started using #AshFramework for a personal project, it is going well (and works pretty well). Still learning so we will see how it will go once I need less « magic » and more logic though but I think I understand the direction it will go already

    At the same time I moved to a Forgejo instance, and I’m trying out a bit of jj!

    #MyElixirStatus #ElixirLang #Elixir

  7. Just added discord to loopr too 😎. Spent ~6 years of my life building lego bricks with #AshFramework and damn it feels good to actually build something with it. Wildly validating feeling. With Ash and LLMs this stuff is just comically easy.

    RE: https://bsky.app/profile/did:plc:asqrltlnmzecxz42wklq6yy2/post/3mkex43cw6s26

  8. Loopr now has an official public API that you can use to create and manage items, allowing for custom integrations 😎. You can create and manage API keys in settings. #AshFramework makes this stuff so easy it feels like cheating.

  9. Ash expressions are extremely powerful. Expressions can be compiled to SQL. You can filter on them, sort on them, reference them in policies, and aggregate over them. They can be used in your APIs with zero extra work. Define it once, use it everywhere. #AshFramework #ElixirLang

  10. #AshFramework atomic updates are extremely powerful. When you add a where: [changing(:name)] condition, in an atomic context it compiles into the UPDATE statement itself. The condition becomes a CASE expression in SQL. One atomic query. #ElixirLang

  11. I've rebranded Ash Weekly to Ash Chronicle, and published the first edition for a very long time. I've been so busy but I'm happy I finally had some time to put one together! #AshFramework #ElixirLang open.substack.com/pub/ashchron...

    Ash Chronicle: Issue #26

  12. AshAI lets you turn your existing #AshFramework actions into LLM tools. Policies and validations still apply, so the LLM can only do what an authorized user could do. You can expose them as an MCP server too, so Claude Desktop can call your application directly. #ElixirLang

  13. Thanks to @[email protected], #AshFramework now supports relating "through" a path. This can dramatically simplify loading patterns and reduce cases where you'd have had to define a manual relationship or calculation. Super useful and all the benefits of relationships apply! #ElixirLang

  14. In igniter v0.7.8, installers/tasks should now be wildly faster during code generation, especially on top of existing projects. ~7 minutes -> 15 seconds for running `mix ash_ai.gen.chat` on a project w/ 1200 files. #ElixirLang #AshFramework Details in thread 🧵

  15. Introducing AshStorage! Attachment and file management that slots directly into your resources 😎 I had hoped to get this to a releasable state before sharing. Its not *quite* there yet but I'm announcing it anyway as I know the #AshFramework community is waiting. #ElixirLang

  16. Any #ElixirLang or #AshFramework engineers within driving/commute distance of Summit, New Jersey?

  17. In the latest release of #AshFramework, you can encapsulate sets of changes/preparations/validations as "pipelines". More related features coming, but its already a great way to clean up duplicate actions. You can even use `where` to make the whole set conditional! 😎 #ElixirLang

  18. #AshFramework CVE: Classic atom exhaustion, highly unlikely you'd be affected. This affects those using the `:module` type, and accepting that over a public interface (probably no-one). A malicious actor could send a bunch of random values and exhaust your atom table. github.com/ash-project/...

    Ash.Type.Module.cast_input/2 a...

  19. `Ash.Validation` now supports validating batches of changesets in bulk actions. Most validations should be cheap, but every once in a while you can save some cycles by validating batches at a time. #AshFramework #ElixirLang

  20. Calculations in #AshFramework are extremely powerful, but something that often happens is you end up adding a whole lot of them, each one taking up a field on the struct. Now you can pass `field? false` to get all the features with no struct field taken! 🎉 #ElixirLang

  21. #AshFramework does a lot under the hood, probably more than you realize 🧙. Did you know we use type inference to cast values in critical areas of SQL queries? Now you can use that same logic to get type inference of your calculations 😎 See the before/after. #ElixirLang

  22. This is now supported in AshGraphql and AshJsonApi, and soon for AshTypescript 🎉. #AshFramework already makes building secure applications easy with strong controls around data visibility, policies etc. This is icing on the cake, especially powerful for larger apps. #ElixirLang

    RE: https://bsky.app/profile/did:plc:asqrltlnmzecxz42wklq6yy2/post/3mhjo7jnhn22h

  23. Spark, the DSL building tool that backs #AshFramework and many other tools, now supports a functional builder pattern for defining DSLs! Before, you had to hand-roll a bunch of structs. See the before/after shots 😎 #ElixirLang

  24. As of #AshFramework 3.20.0, actions now support the `public?` option, just like fields. It defaults to `true`, but will be flipped in 4.0. This makes it very easy to know and control what actions are available via external interfaces. Support will be rolled out to API extensions soon.

  25. #AshFramework can generate resources from your database. Now, with `--fragments` you can just re-run the generator and your customizations are preserved, only the schema fragments get refreshed. Perfect for working against databases you don't own😎 #ElixirLang

  26. AshJsonApi 1.6-rc.1 is out that allows transforming fields, with convenient builtins for camelizing/dasherizing fields. This applies automatically to reading, writing, filtering, sorting, field selection: everything 😎 #AshFramework #ElixirLang

  27. AshAdmin 1.0rc is out, with a complete UI overhaul, a rework of our markdown/json editor to code mirror, and features for more convenient relationship management and multitenancy drop-down/typeahead 🎉 #AshFramework #ElixirLang

  28. 📢The latest AshTypescript release brings you t typed controllers🎉 Using Typescript with Phoenix has never been easier, with or without #AshFramework. Thanks to Torkild for his awesome package! I might be working on a PR for something pretty cool there myself 😎 #ElixirLang

  29. You can now set attributes to the results of expressions in create actions. This can be useful for a whole slew of reasons, one of which is being able to use aggregates, fragments, etc. Especially powerful when paired with upserts. #AshFramework #ElixirLang

  30. Reactor hitting 1.0 and AshAuthentication hitting 5.0 (rc) within just a few days of each other is epic. TOTP now comes out of the box with AshAuthentication 👀 #AshFramework #ElixirLang

  31. Veckans Kodsnack är här: Fredrik och @equeroot snackar abstraktioner, Ash, och om att generera sitt back-office.

    Fredrik undrar om inlärningskurvor, tankesätt, och om det inte känns som att man ska riskera att bli inlåst i ett ramverk av den typen.

    kodsnack.se/671/, och överallt där poddar finns. #podcast #ashFramework #kodGenerering #ingaDekorationerBaraHus

  32. Hey folks! We have a CVE up for #AshFramework bypass policies. It's a *highly unlikely edge case*. But, as always, we take security extremely seriously and will always follow proper procedure here. Props to @maennchen.dev for reporting and resolving 🙇

  33. What if you had *full stack types* for SPAs built with tech like #React, #Inertia, #Vue, #Svelte... but all of the power #AshFramework and #ElixirLang on the backend? Well, you can now.😉 hexdocs.pm/ash_typescri...

  34. Tidewave - Tried it yet?

    We're hearing interesting things... ashweekly.substack.com/p/ash-weekly-issue-15
    What about you?

    #tidewave #AshFramework #ElixirLang #Phoenix #dashbit
    @zachdaniel.dev

  35. I think are one of the easiest way for user onboarding. Plus, better security. Without the corps having a say. 😅

    And of course, has for a quick bootstrap. 😎

    hexdocs.pm/ash_authentication/