Difference between revisions of "Plugins"

From Amahi Wiki
Jump to: navigation, search
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Plugins for the Amahi Platform =
+
= What are Plugins =
  
 
Plugins for the Amahi platform have been a neat but powerful feature that were a long time coming.
 
Plugins for the Amahi platform have been a neat but powerful feature that were a long time coming.
Line 5: Line 5:
 
At the user level, plugins are installed like other apps from the Amahi app store. They are not a general purpose app, but rather a module that is added to the Amahi dashboard and setup areas for adding features. We have a few examples of plugins:
 
At the user level, plugins are installed like other apps from the Amahi app store. They are not a general purpose app, but rather a module that is added to the Amahi dashboard and setup areas for adding features. We have a few examples of plugins:
  
* [https://www.amahi.org/apps/db-backups-plugin Backing up databases] for some apps residing inside an HDA
+
* [https://www.amahi.org/apps/db-backups Database Backups] for some apps residing inside an HDA
* [https://www.amahi.org/apps/pooling Greyhole UI] (under development)
+
* [https://www.amahi.org/apps/pooling Greyhole UI] provide dashboard UI as in Amahi 6
* [https://www.amahi.org/apps/web-apps Webapps], which adds the ability to manually add webapps -- useful for developers
+
* [https://www.amahi.org/apps/web-apps Webapps], which adds the ability to manually add webapps (useful for developers)
* [https://www.amahi.org/apps/disk-stats Disk stats] plugin to monitor more detailed disk information
+
* [https://www.amahi.org/apps/disk-stats Disk Stats] plugin to monitor more detailed disk information
* [https://www.amahi.org/apps/disk-wizard New-disk wizard], under development, to easily add new drives onto an Amahi system
+
* [https://www.amahi.org/apps/disk-wizard Disk Wizard], to easily add new drives onto an Amahi system (in '''development'')
  
 
= Technical Description =
 
= Technical Description =
  
Plugins are really Ruby on Rails engines that are automatically mounted onto the Amahi platform via the installation of the corresponding app under which a plugin has been set up.
+
Plugins are really Ruby on Rails engines that are automatically mounted onto the Amahi platform via the installation of the corresponding app under which a plugin has been set up. See the Plugin [https://github.com/amahi/platform/blob/master/doc/plugins.md technical documentation page].
  
== Migrations ==
+
We have a generator for coming up with a skeleton for a plugin. See the technical documentation for help. Also, the [https://github.com/amahi Amahi GitHub page] contains sources for several of the plugins we have built, from smaller showcase examples to more complex plugins.
 +
 
 +
= Migrations =
  
 
Plugins can automatically do "migrations", which are changes to the database structure of the platform. This is a little dangerous and should be done with care, but it's a really powerful feature.
 
Plugins can automatically do "migrations", which are changes to the database structure of the platform. This is a little dangerous and should be done with care, but it's a really powerful feature.

Latest revision as of 23:12, 1 October 2014

What are Plugins

Plugins for the Amahi platform have been a neat but powerful feature that were a long time coming.

At the user level, plugins are installed like other apps from the Amahi app store. They are not a general purpose app, but rather a module that is added to the Amahi dashboard and setup areas for adding features. We have a few examples of plugins:

  • Database Backups for some apps residing inside an HDA
  • Greyhole UI provide dashboard UI as in Amahi 6
  • Webapps, which adds the ability to manually add webapps (useful for developers)
  • Disk Stats plugin to monitor more detailed disk information
  • Disk Wizard, to easily add new drives onto an Amahi system (in 'development)

Technical Description

Plugins are really Ruby on Rails engines that are automatically mounted onto the Amahi platform via the installation of the corresponding app under which a plugin has been set up. See the Plugin technical documentation page.

We have a generator for coming up with a skeleton for a plugin. See the technical documentation for help. Also, the Amahi GitHub page contains sources for several of the plugins we have built, from smaller showcase examples to more complex plugins.

Migrations

Plugins can automatically do "migrations", which are changes to the database structure of the platform. This is a little dangerous and should be done with care, but it's a really powerful feature.

Assets

It's recommended that you add a nice, zoomed-in screenshot and a neat logo for the plugin's app.

We have started to add a "badge" which is a small cube in Amahi colors. You can see how it's used in the logs of the Database Backups plugin logo.

Here is the plugins badge. It's a photoshop file, but it can be edited with Gimp as well.