diff --git a/lib/txdb/downloader.rb b/lib/txdb/downloader.rb
index <HASH>..<HASH> 100644
--- a/lib/txdb/downloader.rb
+++ b/lib/txdb/downloader.rb
@@ -6,6 +6,10 @@ module Txdb
       def download(database, locale)
         new(database).download(locale)
       end
+
+      def download_all(database)
+        new(database).download_all
+      end
     end
 
     attr_reader :database
@@ -14,6 +18,15 @@ module Txdb
       @database = database
     end
 
+    def download_all
+      database.tables.each do |table|
+        locales.each do |locale|
+          next if locale == table.source_lang
+          download_table(table, locale)
+        end
+      end
+    end
+
     def download(locale)
       database.tables.each do |table|
         download_table(table, locale)
@@ -54,5 +67,11 @@ module Txdb
           Txgh::TxResource.from_api_response(project_slug, resource_hash)
         end
     end
+
+    def locales
+      @locales ||= database.transifex_api
+        .get_languages(database.transifex_project.project_slug)
+        .map { |locale| locale['language_code'] }
+    end
   end
 end
Adding download_all option to downloader