<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/uberkit/form.rb</filename>
    </added>
    <added>
      <filename>lib/uberkit/forms/builder.rb</filename>
    </added>
    <added>
      <filename>lib/uberkit/forms/helper.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -16,6 +16,78 @@ To install it as a plugin (Rails 2.1 or later):
 
   script/plugin install git://github.com/mbleigh/uberkit.git
   
+UberForms
+---------
+
+UberForms provide a simple context for building forms in a DRYer
+manner by abstracting the markup into a simple, CSS-styleable
+format. It is available as a form builder as Uberkit::Forms::Builder,
+but is likely more useful when used in one of the helper forms:
+uberform_for or remote_uberform_for.
+
+=== Basic Example
+
+&lt;% uberform_for :user do |f| %&gt;
+  &lt;%= f.text_field :login %&gt;
+  &lt;%= f.password_field :password %&gt;
+  &lt;%= f.submit &quot;Submit&quot;%&gt;
+&lt;% end %&gt;
+
+Becomes...
+
+&lt;form method=&quot;post&quot; class=&quot;uberform&quot; action=&quot;/users&quot;&gt;
+  &lt;div class=&quot;field_row&quot;&gt;
+    &lt;label for=&quot;user_login&quot;&gt;Login:&lt;/label&gt;
+    &lt;input type=&quot;text&quot; size=&quot;30&quot; name=&quot;user[login]&quot; id=&quot;user_login&quot; class=&quot;text_field&quot;/&gt;
+    &lt;br/&gt;
+  &lt;/div&gt;
+  &lt;div class=&quot;field_row&quot;&gt;
+    &lt;label for=&quot;user_password&quot;&gt;Password:&lt;/label&gt;
+    &lt;input type=&quot;password&quot; size=&quot;30&quot; name=&quot;user[password]&quot; id=&quot;user_password&quot; class=&quot;password_field&quot;/&gt;
+    &lt;br/&gt;
+  &lt;/div&gt;
+  &lt;button type=&quot;submit&quot;&gt;Submit&lt;/button&gt;
+&lt;/form&gt;
+
+=== Labels, Help, and Descriptions
+
+You can pass options into a given field to set a custom label,
+some help text, or a description of the field.
+
+&lt;%= f.text_field :login, :label =&gt; &quot;Username&quot;, 
+                         :help =&gt; &quot;Only a-z and underscores.&quot;, 
+                         :description =&gt; &quot;The name you will use to log in.&quot; %&gt;
+
+Becomes...
+
+&lt;div class=&quot;field_row&quot;&gt;
+  &lt;label for=&quot;user_login&quot;&gt;Username:&lt;/label&gt;
+  &lt;input type=&quot;text&quot; size=&quot;30&quot; name=&quot;user[login]&quot; label=&quot;Username&quot; id=&quot;user_login&quot; help=&quot;Only a-z and underscores.&quot; description=&quot;The name you will use to log in.&quot; class=&quot;text_field&quot;/&gt;
+  &lt;span class=&quot;help&quot;&gt;Only a-z and underscores.&lt;/span&gt;
+  &lt;span class=&quot;description&quot;&gt;The name you will use to log in.&lt;/span&gt;
+  &lt;br/&gt;
+&lt;/div&gt;
+
+=== Custom Fields
+
+Maybe the built-in form helpers won't do it for you. In that case, you
+can use the custom helper to insert arbitrary HTML that still plays
+nice with the rest of UberForms:
+
+&lt;% f.custom :label =&gt; &quot;State&quot;, :for =&gt; &quot;user_state&quot; do |f| %&gt;
+  &lt;%= state_select :user, :state %&gt;
+&lt;% end %&gt;
+
+Becomes...
+
+&lt;div class=&quot;field_row&quot;&gt;
+  &lt;label for=&quot;user_state&quot;&gt;State:&lt;/label&gt;
+  &lt;div class=&quot;pseudo_field&quot;&gt;
+    &lt;select id=&quot;user_state&quot;&gt;...&lt;/select&gt;
+  &lt;/div&gt; 
+  &lt;br/&gt;
+&lt;/div&gt;
+
 UberMenu
 --------
 </diff>
      <filename>README</filename>
    </modified>
    <modified>
      <diff>@@ -1,2 +1,3 @@
 require 'uberkit/displayer'
-require 'uberkit/menu'
\ No newline at end of file
+require 'uberkit/menu'
+require 'uberkit/form'
\ No newline at end of file</diff>
      <filename>lib/uberkit.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,11 +1,11 @@
 Gem::Specification.new do |s|
   s.name = &quot;uberkit&quot;
-  s.version = &quot;0.0.1&quot;
-  s.date = &quot;2008-07-07&quot;
+  s.version = &quot;0.0.2&quot;
+  s.date = &quot;2008-07-14&quot;
   s.summary = &quot;A Rails plugin for a common set of UI tools and helpers for building interfaces.&quot;
   s.email = &quot;michael@intridea.com&quot;
   s.homepage = &quot;http://www.actsascommunity.com/projects/uberkit&quot;
-  s.description = &quot;UberKit is a set of tools for common UI problems in Rails including menus.&quot;
+  s.description = &quot;UberKit is a set of tools for common UI problems in Rails including menus and forms.&quot;
   s.has_rdoc = false
   s.authors = [&quot;Michael Bleigh&quot;]
   s.files = [ &quot;MIT-LICENSE&quot;,</diff>
      <filename>uberkit.gemspec</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>7894d8aa1f5a74cced5e2ecd9abf2b3fff08f8e0</id>
    </parent>
  </parents>
  <author>
    <name>Michael Bleigh</name>
    <email>michael@intridea.com</email>
  </author>
  <url>http://github.com/ajsharp/uberkit/commit/c219287abaab27727a995d82106764a982a705ca</url>
  <id>c219287abaab27727a995d82106764a982a705ca</id>
  <committed-date>2008-07-14T12:20:26-07:00</committed-date>
  <authored-date>2008-07-14T12:20:26-07:00</authored-date>
  <message>Added UberForms to the Uberkit.</message>
  <tree>c3ba08525c99bd14b6a54645aa513e251326ec17</tree>
  <committer>
    <name>Michael Bleigh</name>
    <email>michael@intridea.com</email>
  </committer>
</commit>
