hiiiiloman has quit [Remote host closed the connection]
<FromGitter>
<Brodan> @eliasjpr thank you!
<FromGitter>
<damianham> @andrewc910 I think a plugin would be much the same as a Gem, e.g. like Devise which provides routes, controller, views and model mixins so the main difference between a plugin and libs in the lib folder would be the addition of frontend artifacts and routes. Your OAuth lib that you are working on could be a plugin for example. There is an issue https://github.com/amberframework/amber/issues/742 to start the
<FromGitter>
... discussion on plugins but that discusses plugins as generators and related to recipes, which I don't see as the case now. I see a plugin as a self contained suite of frontend & backend artifacts that you drop into the plugins folder and get all the features of the plugin added to your web application. Well that's how I ... [https://gitter.im/amberframework/amber?at=5e4cc68689f30b1265173ae8]
<FromGitter>
<Blacksmoke16> maybe get some ideas from there
<FromGitter>
<damianham> Thanks for the info - will see what ideas I can extract from it.
<FromGitter>
<confact> is it any way to abort a transaction after saving in Granite? I want to create a new model with reference to the one I created in after_save callback, and if that one have a duplicated name, I want to abort the whole transaction, including the one I try to save.
<FromGitter>
<andrewc910> @damianham So something like `amber install random_plugin`? I haven't looked at the recipe command but I think install could be very similar to the "generator" command. I'm thinking you shard. That shard has a "plug-in folder" either at root or in src. The install command finds that folder and sets that as the template for teeplate?
<FromGitter>
<andrewc910> I'm thinking you install a shard* missed the word install haha