diff --git a/Manifest b/Manifest
index 77ac76a9..7eae6ac1 100644
--- a/Manifest
+++ b/Manifest
@@ -11,11 +11,16 @@ examples/blueprint_default/src/ie.sass
examples/blueprint_default/src/images/grid.png
examples/blueprint_default/src/print.sass
examples/blueprint_default/src/screen.sass
+examples/blueprint_plugins/images/buttons/cross.png
+examples/blueprint_plugins/images/buttons/key.png
+examples/blueprint_plugins/images/buttons/tick.png
examples/blueprint_plugins/index.html
+examples/blueprint_plugins/parts/buttons.html
examples/blueprint_plugins/parts/fancy_type.html
examples/blueprint_plugins/parts/test-small.jpg
examples/blueprint_plugins/parts/test.jpg
examples/blueprint_plugins/parts/valid.png
+examples/blueprint_plugins/src/buttons.sass
examples/blueprint_plugins/src/ie.sass
examples/blueprint_plugins/src/images/grid.png
examples/blueprint_plugins/src/print.sass
@@ -59,6 +64,7 @@ frameworks/blueprint/stylesheets/_blueprint.sass
frameworks/blueprint/stylesheets/blueprint/_ie.sass
frameworks/blueprint/stylesheets/blueprint/_print.sass
frameworks/blueprint/stylesheets/blueprint/_screen.sass
+frameworks/blueprint/stylesheets/blueprint/modules/_buttons.sass
frameworks/blueprint/stylesheets/blueprint/modules/_colors.sass
frameworks/blueprint/stylesheets/blueprint/modules/_debug.sass
frameworks/blueprint/stylesheets/blueprint/modules/_fancy_type.sass
@@ -69,6 +75,11 @@ frameworks/blueprint/stylesheets/blueprint/modules/_liquid.sass
frameworks/blueprint/stylesheets/blueprint/modules/_scaffolding.sass
frameworks/blueprint/stylesheets/blueprint/modules/_typography.sass
frameworks/blueprint/stylesheets/blueprint/modules/_utilities.sass
+frameworks/blueprint/templates/buttons/buttons/cross.png
+frameworks/blueprint/templates/buttons/buttons/key.png
+frameworks/blueprint/templates/buttons/buttons/tick.png
+frameworks/blueprint/templates/buttons/buttons.sass
+frameworks/blueprint/templates/buttons/manifest.rb
frameworks/blueprint/templates/project/grid.png
frameworks/blueprint/templates/project/ie.sass
frameworks/blueprint/templates/project/manifest.rb
@@ -125,6 +136,7 @@ lib/compass/commands/generate_grid_background.rb
lib/compass/commands/list_frameworks.rb
lib/compass/commands/print_version.rb
lib/compass/commands/project_base.rb
+lib/compass/commands/stamp_pattern.rb
lib/compass/commands/update_project.rb
lib/compass/commands/validate_project.rb
lib/compass/commands/watch_project.rb
diff --git a/examples/blueprint_plugins/images/buttons/cross.png b/examples/blueprint_plugins/images/buttons/cross.png
new file mode 100644
index 00000000..1514d51a
Binary files /dev/null and b/examples/blueprint_plugins/images/buttons/cross.png differ
diff --git a/examples/blueprint_plugins/images/buttons/key.png b/examples/blueprint_plugins/images/buttons/key.png
new file mode 100644
index 00000000..a9d5e4f8
Binary files /dev/null and b/examples/blueprint_plugins/images/buttons/key.png differ
diff --git a/examples/blueprint_plugins/images/buttons/tick.png b/examples/blueprint_plugins/images/buttons/tick.png
new file mode 100644
index 00000000..a9925a06
Binary files /dev/null and b/examples/blueprint_plugins/images/buttons/tick.png differ
diff --git a/examples/blueprint_plugins/index.html b/examples/blueprint_plugins/index.html
index 6aa7b030..418b4ff6 100644
--- a/examples/blueprint_plugins/index.html
+++ b/examples/blueprint_plugins/index.html
@@ -35,6 +35,13 @@
A simple sample page, with common elements and fancy type.
+
+ Buttons
+
+ grid.sass ,
+
+ A simple page, showing links and buttons styled using the button plugin.
+
Note about the css files:
diff --git a/examples/blueprint_plugins/parts/buttons.html b/examples/blueprint_plugins/parts/buttons.html
new file mode 100644
index 00000000..d3114e7f
--- /dev/null
+++ b/examples/blueprint_plugins/parts/buttons.html
@@ -0,0 +1,59 @@
+
+
+
+
+
+ Blueprint Buttons Sample Page
+
+
+
+
+
+
+
+
+
+
+
+
A Button Example Page
+
+
This sample page demonstrates what you can do with the Buttons plugin.
+
+
+
+
+
+
Real Buttons
+ Normal Button
+ Positive Button
+ Negative Button
+
+
+
+
+
+
Real Buttons with Images
+
Save
+
Change Password
+
Cancel
+
+
+
+
+
+
+
+
+
+
diff --git a/examples/blueprint_plugins/src/buttons.sass b/examples/blueprint_plugins/src/buttons.sass
new file mode 100644
index 00000000..e8ca96e6
--- /dev/null
+++ b/examples/blueprint_plugins/src/buttons.sass
@@ -0,0 +1,49 @@
+@import compass/utilities/general/float.sass
+@import blueprint/modules/buttons.sass
+
+//
+ Use the following HTML code to place the buttons on your site:
+
+
+ Save
+
+
+
+ Change Password
+
+
+
+ Cancel
+
+
+a.button
+ // you can pass "left" or "right" to +anchor-button to float it in that direction
+ // or you can pass no argument to leave it inline-block (cross browser safe!) within
+ // the flow of your page.
+ +anchor-button("left")
+ // All the button color mixins take 4 optional arguments:
+ // font color, background color, border color, border highlight color
+ // the first three default to constants set in blueprint/modules/buttons.sass
+ // the last one defaults to a shade lighter than the border color.
+ +button-colors
+ +button-hover-colors
+ +button-active-colors
+
+button
+ // The +button-button mixin is just like the +anchor-button mixin, but for elements.
+ +button-button("left")
+ +button-colors
+ +button-hover-colors
+ +button-active-colors
+
+// We can change the colors for buttons of certain classes, etc.
+a.positive, button.positive
+ :color #529214
+ +button-hover-colors(#529214, #E6EFC2, #C6D880)
+ +button-active-colors(#FFF, #529214, #529214)
+
+a.negative, button.negative
+ :color #D12F19
+ +button-hover-colors(#D12F19, #FBE3E4, #FBC2C4)
+ +button-active-colors(#FFF, #D12F19, #D12F19)
+
diff --git a/frameworks/blueprint/stylesheets/blueprint/modules/_buttons.sass b/frameworks/blueprint/stylesheets/blueprint/modules/_buttons.sass
new file mode 100644
index 00000000..a59338a3
--- /dev/null
+++ b/frameworks/blueprint/stylesheets/blueprint/modules/_buttons.sass
@@ -0,0 +1,84 @@
+@import compass/utilities/general/inline_block.sass
+@import compass/utilities/general/float.sass
+
+// Button Font
+!blueprint_button_font_family ||= "\"Lucida Grande\", Tahoma, Arial, Verdana, sans-serif"
+
+// Default Button Colors
+!blueprint_button_border_color ||= #DEDEDE
+!blueprint_button_background_color ||= #F5F5F5
+!blueprint_button_font_color ||= #565656
+
+// Default Button Hover Colors
+!blueprint_button_hover_border_color ||= #C2E1EF
+!blueprint_button_hover_background_color ||= #DFF4FF
+!blueprint_button_hover_font_color ||= #336699
+
+// Default Button Active Colors
+!blueprint_button_active_border_color ||= #6299C5
+!blueprint_button_active_background_color ||= #6299C5
+!blueprint_button_active_font_color ||= #FFF
+
+//**
+ Sets the colors for a button
+ @param border_highlight_color
+ The highlight color defaults to whatever is the value of the border_color but it's one shade lighter.
+=button-colors(!font_color = !blueprint_button_font_color, !bg_color = !blueprint_button_background_color, !border_color = !blueprint_button_border_color, !border_highlight_color = !border_color + #101010)
+ :background-color= !bg_color
+ :border-color= !border_highlight_color !border_color !border_color !border_highlight_color
+ :color= !font_color
+
+//**
+ Sets the colors for a button in the active state
+ @param border_highlight_color
+ The highlight color defaults to whatever is the value of the border_color but it's one shade lighter.
+=button-active-colors(!font_color = !blueprint_button_active_font_color, !bg_color = !blueprint_button_active_background_color, !border_color = !blueprint_button_active_border_color, !border_highlight_color = !border_color + #101010)
+ &:active
+ +button-colors(!font_color, !bg_color, !border_color, !border_highlight_color)
+
+//**
+ Sets the colors for a button in the hover state.
+ @param border_highlight_color
+ The highlight color defaults to whatever is the value of the border_color but it's one shade lighter.
+=button-hover-colors(!font_color = !blueprint_button_hover_font_color, !bg_color = !blueprint_button_hover_background_color, !border_color = !blueprint_button_hover_border_color, !border_highlight_color = !border_color + #101010)
+ &:hover
+ +button-colors(!font_color, !bg_color, !border_color, !border_highlight_color)
+
+=button-base(!float = false)
+ @if !float
+ :display block
+ +float(!float)
+ @else
+ +inline-block
+ :margin 0.7em 0.5em 0.7em 0
+ :border-width 1px
+ :border-style solid
+ :font-family= !blueprint_button_font_family
+ :font-size 100%
+ :line-height 130%
+ :text-decoration none
+ :font-weight bold
+ :cursor pointer
+ img
+ :margin 0 3px -3px 0 !important
+ :padding 0
+ :border none
+ :width 16px
+ :height 16px
+ :float none
+
+
+=anchor-button(!float = false)
+ +button-base(!float)
+ :padding 5px 10px 5px 7px
+
+=button-button(!float = false)
+ +button-base(!float)
+ :width auto
+ :overflow visible
+ :padding 4px 10px 3px 7px
+ &[type]
+ :padding 4px 10px 4px 7px
+ :line-height 17px
+ *:first-child+html &[type]
+ :padding 4px 10px 3px 7px
diff --git a/frameworks/blueprint/templates/buttons/buttons.sass b/frameworks/blueprint/templates/buttons/buttons.sass
new file mode 100644
index 00000000..e8ca96e6
--- /dev/null
+++ b/frameworks/blueprint/templates/buttons/buttons.sass
@@ -0,0 +1,49 @@
+@import compass/utilities/general/float.sass
+@import blueprint/modules/buttons.sass
+
+//
+ Use the following HTML code to place the buttons on your site:
+
+
+ Save
+
+
+
+ Change Password
+
+
+
+ Cancel
+
+
+a.button
+ // you can pass "left" or "right" to +anchor-button to float it in that direction
+ // or you can pass no argument to leave it inline-block (cross browser safe!) within
+ // the flow of your page.
+ +anchor-button("left")
+ // All the button color mixins take 4 optional arguments:
+ // font color, background color, border color, border highlight color
+ // the first three default to constants set in blueprint/modules/buttons.sass
+ // the last one defaults to a shade lighter than the border color.
+ +button-colors
+ +button-hover-colors
+ +button-active-colors
+
+button
+ // The +button-button mixin is just like the +anchor-button mixin, but for elements.
+ +button-button("left")
+ +button-colors
+ +button-hover-colors
+ +button-active-colors
+
+// We can change the colors for buttons of certain classes, etc.
+a.positive, button.positive
+ :color #529214
+ +button-hover-colors(#529214, #E6EFC2, #C6D880)
+ +button-active-colors(#FFF, #529214, #529214)
+
+a.negative, button.negative
+ :color #D12F19
+ +button-hover-colors(#D12F19, #FBE3E4, #FBC2C4)
+ +button-active-colors(#FFF, #D12F19, #D12F19)
+
diff --git a/frameworks/blueprint/templates/buttons/buttons/cross.png b/frameworks/blueprint/templates/buttons/buttons/cross.png
new file mode 100755
index 00000000..1514d51a
Binary files /dev/null and b/frameworks/blueprint/templates/buttons/buttons/cross.png differ
diff --git a/frameworks/blueprint/templates/buttons/buttons/key.png b/frameworks/blueprint/templates/buttons/buttons/key.png
new file mode 100755
index 00000000..a9d5e4f8
Binary files /dev/null and b/frameworks/blueprint/templates/buttons/buttons/key.png differ
diff --git a/frameworks/blueprint/templates/buttons/buttons/tick.png b/frameworks/blueprint/templates/buttons/buttons/tick.png
new file mode 100755
index 00000000..a9925a06
Binary files /dev/null and b/frameworks/blueprint/templates/buttons/buttons/tick.png differ
diff --git a/frameworks/blueprint/templates/buttons/manifest.rb b/frameworks/blueprint/templates/buttons/manifest.rb
new file mode 100644
index 00000000..b097845b
--- /dev/null
+++ b/frameworks/blueprint/templates/buttons/manifest.rb
@@ -0,0 +1,5 @@
+stylesheet 'buttons.sass', :media => 'screen, projection'
+
+image 'buttons/cross.png'
+image 'buttons/key.png'
+image 'buttons/tick.png'