The purpose of this post is to provide an overview of the fundamentals necessary to create a plugin in Foreman.
The first thing to understand is that a Foreman plugin is really just a Rails engine.
Rails Engines
http://guides.rubyonrails.org/engines.html
– What are engines? Think about a car: a car is a machine and the engine is a smaller machine inside that is the core of what makes the car run. In the same way, a Rails engine is a mini application that provides functionality to its host application.