diff --git a/lib/dragonfly/s3_data_store.rb b/lib/dragonfly/s3_data_store.rb
index <HASH>..<HASH> 100644
--- a/lib/dragonfly/s3_data_store.rb
+++ b/lib/dragonfly/s3_data_store.rb
@@ -1,6 +1,8 @@
 require 'fog'
 require 'dragonfly'
 
+Dragonfly::App.register_datastore(:s3){ Dragonfly::S3DataStore }
+
 module Dragonfly
   class S3DataStore
 
diff --git a/spec/s3_data_store_spec.rb b/spec/s3_data_store_spec.rb
index <HASH>..<HASH> 100644
--- a/spec/s3_data_store_spec.rb
+++ b/spec/s3_data_store_spec.rb
@@ -54,6 +54,15 @@ describe Dragonfly::S3DataStore do
   let (:content) { Dragonfly::Content.new(app, "eggheads") }
   let (:new_content) { Dragonfly::Content.new(app) }
 
+  describe "registering with a symbol" do
+    it "registers a symbol for configuring" do
+      app.configure do
+        datastore :s3
+      end
+      app.datastore.should be_a(Dragonfly::S3DataStore)
+    end
+  end
+
   describe "write" do
     it "should use the name from the content if set" do
       content.name = 'doobie.doo'
register :s3 symbol with Dragonfly::App