diff --git a/app/models/communication/website.rb b/app/models/communication/website.rb
index 72f5ddb8be1dabf5cbaf76b8b71245e82a1fa267..30298135c9fcc3d60a04280bdabfb42550e2f5c8 100644
--- a/app/models/communication/website.rb
+++ b/app/models/communication/website.rb
@@ -73,7 +73,7 @@ class Communication::Website < ApplicationRecord
   end
 
   def git_dependencies(website)
-    dependencies = [self, config_permalinks, config_base_url] + menus
+    dependencies = [self, config_default_languages, config_default_permalinks, config_development_config, config_production_config] + menus
     dependencies += pages + pages.map(&:active_storage_blobs).flatten
     dependencies += posts + posts.map(&:active_storage_blobs).flatten
     dependencies += people_with_facets + people.map(&:active_storage_blobs).flatten
diff --git a/app/models/communication/website/configs/default_languages.rb b/app/models/communication/website/configs/default_languages.rb
new file mode 100644
index 0000000000000000000000000000000000000000..56f6c9865ff42b7c454c12ad0ee5f00b95a1c910
--- /dev/null
+++ b/app/models/communication/website/configs/default_languages.rb
@@ -0,0 +1,46 @@
+# == Schema Information
+#
+# Table name: communication_websites
+#
+#  id               :uuid             not null, primary key
+#  about_type       :string           indexed => [about_id]
+#  access_token     :string
+#  git_branch       :string
+#  git_endpoint     :string
+#  git_provider     :integer          default("github")
+#  in_production    :boolean          default(FALSE)
+#  name             :string
+#  plausible_url    :string
+#  repository       :string
+#  style            :text
+#  style_updated_at :date
+#  url              :string
+#  created_at       :datetime         not null
+#  updated_at       :datetime         not null
+#  about_id         :uuid             indexed => [about_type]
+#  university_id    :uuid             not null, indexed
+#
+# Indexes
+#
+#  index_communication_websites_on_about          (about_type,about_id)
+#  index_communication_websites_on_university_id  (university_id)
+#
+# Foreign Keys
+#
+#  fk_rails_bb6a496c08  (university_id => universities.id)
+#
+class Communication::Website::Configs::DefaultLanguages < Communication::Website
+
+  def self.polymorphic_name
+    'Communication::Website::Configs::DefaultLanguages'
+  end
+
+  def git_path(website)
+    "config/_default/languages.yaml"
+  end
+
+  def template_static
+    "admin/communication/websites/configs/default_languages/static"
+  end
+
+end
diff --git a/app/models/communication/website/configs/permalinks.rb b/app/models/communication/website/configs/default_permalinks.rb
similarity index 84%
rename from app/models/communication/website/configs/permalinks.rb
rename to app/models/communication/website/configs/default_permalinks.rb
index cf836fd47e1a754b79dd1922b498f0d4b5c0e929..b028dd2b65b46dd2de15e783f299a650b56fdd2e 100644
--- a/app/models/communication/website/configs/permalinks.rb
+++ b/app/models/communication/website/configs/default_permalinks.rb
@@ -29,10 +29,10 @@
 #
 #  fk_rails_bb6a496c08  (university_id => universities.id)
 #
-class Communication::Website::Configs::Permalinks < Communication::Website
+class Communication::Website::Configs::DefaultPermalinks < Communication::Website
 
   def self.polymorphic_name
-    'Communication::Website::Configs::Permalinks'
+    'Communication::Website::Configs::DefaultPermalinks'
   end
 
   def git_path(website)
@@ -40,7 +40,7 @@ class Communication::Website::Configs::Permalinks < Communication::Website
   end
 
   def template_static
-    "admin/communication/websites/configs/permalinks/static"
+    "admin/communication/websites/configs/default_permalinks/static"
   end
 
 end
diff --git a/app/models/communication/website/configs/development_config.rb b/app/models/communication/website/configs/development_config.rb
new file mode 100644
index 0000000000000000000000000000000000000000..5d5d9a8cb869d73ea6159c10b7eea307a6966278
--- /dev/null
+++ b/app/models/communication/website/configs/development_config.rb
@@ -0,0 +1,46 @@
+# == Schema Information
+#
+# Table name: communication_websites
+#
+#  id               :uuid             not null, primary key
+#  about_type       :string           indexed => [about_id]
+#  access_token     :string
+#  git_branch       :string
+#  git_endpoint     :string
+#  git_provider     :integer          default("github")
+#  in_production    :boolean          default(FALSE)
+#  name             :string
+#  plausible_url    :string
+#  repository       :string
+#  style            :text
+#  style_updated_at :date
+#  url              :string
+#  created_at       :datetime         not null
+#  updated_at       :datetime         not null
+#  about_id         :uuid             indexed => [about_type]
+#  university_id    :uuid             not null, indexed
+#
+# Indexes
+#
+#  index_communication_websites_on_about          (about_type,about_id)
+#  index_communication_websites_on_university_id  (university_id)
+#
+# Foreign Keys
+#
+#  fk_rails_bb6a496c08  (university_id => universities.id)
+#
+class Communication::Website::Configs::DevelopmentConfig < Communication::Website
+
+  def self.polymorphic_name
+    'Communication::Website::Configs::DevelopmentConfig'
+  end
+
+  def git_path(website)
+    "config/development/config.yaml"
+  end
+
+  def template_static
+    "admin/communication/websites/configs/development_config/static"
+  end
+
+end
diff --git a/app/models/communication/website/configs/base_url.rb b/app/models/communication/website/configs/production_config.rb
similarity index 84%
rename from app/models/communication/website/configs/base_url.rb
rename to app/models/communication/website/configs/production_config.rb
index 080e03ddd7e4bfabb0ec4ecb17b67e8beb1b9afd..b5aff16217640f864b212a6af6c90837be4b3c09 100644
--- a/app/models/communication/website/configs/base_url.rb
+++ b/app/models/communication/website/configs/production_config.rb
@@ -29,10 +29,10 @@
 #
 #  fk_rails_bb6a496c08  (university_id => universities.id)
 #
-class Communication::Website::Configs::BaseUrl < Communication::Website
+class Communication::Website::Configs::ProductionConfig < Communication::Website
 
   def self.polymorphic_name
-    'Communication::Website::Configs::BaseUrl'
+    'Communication::Website::Configs::ProductionConfig'
   end
 
   def git_path(website)
@@ -40,7 +40,7 @@ class Communication::Website::Configs::BaseUrl < Communication::Website
   end
 
   def template_static
-    "admin/communication/websites/configs/base_urls/static"
+    "admin/communication/websites/configs/production_config/static"
   end
 
 end
diff --git a/app/models/communication/website/menu.rb b/app/models/communication/website/menu.rb
index 9a792698bd684c1af01c3977744b6e1cf02b22a9..6317937ec4d8593d097573a82732e5d97cae157c 100644
--- a/app/models/communication/website/menu.rb
+++ b/app/models/communication/website/menu.rb
@@ -39,7 +39,10 @@ class Communication::Website::Menu < ApplicationRecord
   end
 
   def git_path(website)
-    "data/menus/#{identifier}.yml"
+    # TODO I18n : Right now, we use the language of the website. Add a language to the menu (and future translations)
+    path = "data/menus/"
+    path += "#{website.languages.first.iso_code}/" if website.languages.any?
+    "#{path}#{identifier}.yml"
   end
 
   def template_static
diff --git a/app/models/communication/website/page/with_kind.rb b/app/models/communication/website/page/with_kind.rb
index a504be139e5ba52bca589079f034558a561aaeff..b3724e96458ca1dba27b4d3550f1345ee1d472b2 100644
--- a/app/models/communication/website/page/with_kind.rb
+++ b/app/models/communication/website/page/with_kind.rb
@@ -51,7 +51,7 @@ module Communication::Website::Page::WithKind
     end
 
     def special_page_git_dependencies(website)
-      dependencies = [website.config_permalinks]
+      dependencies = [website.config_default_permalinks]
       case kind
       when "communication_posts"
         dependencies += [
diff --git a/app/models/communication/website/with_configs.rb b/app/models/communication/website/with_configs.rb
index c08987ad4b046d183411613df7cd17cce3aa70d2..34cb40689d735b835a8aa6cb04345bcdecd5d7ff 100644
--- a/app/models/communication/website/with_configs.rb
+++ b/app/models/communication/website/with_configs.rb
@@ -3,12 +3,20 @@ module Communication::Website::WithConfigs
 
   included do
 
-    def config_permalinks
-      @config_permalinks ||= Communication::Website::Configs::Permalinks.find(id)
+    def config_default_languages
+      @config_default_languages ||= Communication::Website::Configs::DefaultLanguages.find(id)
     end
 
-    def config_base_url
-      @config_base_url ||= Communication::Website::Configs::BaseUrl.find(id)
+    def config_default_permalinks
+      @config_default_permalinks ||= Communication::Website::Configs::DefaultPermalinks.find(id)
+    end
+
+    def config_development_config
+      @config_development_config ||= Communication::Website::Configs::DevelopmentConfig.find(id)
+    end
+
+    def config_production_config
+      @config_production_config ||= Communication::Website::Configs::ProductionConfig.find(id)
     end
 
   end
diff --git a/app/views/admin/communication/websites/configs/base_urls/static.html.erb b/app/views/admin/communication/websites/configs/base_urls/static.html.erb
deleted file mode 100644
index 47d8819e135ff980812c48754213d616caabb1ca..0000000000000000000000000000000000000000
--- a/app/views/admin/communication/websites/configs/base_urls/static.html.erb
+++ /dev/null
@@ -1 +0,0 @@
-baseURL: <%= @website.url %>
diff --git a/app/views/admin/communication/websites/configs/default_languages/static.html.erb b/app/views/admin/communication/websites/configs/default_languages/static.html.erb
new file mode 100644
index 0000000000000000000000000000000000000000..761b5f61ab0d52da9ab2a996aa933f4ea5badf20
--- /dev/null
+++ b/app/views/admin/communication/websites/configs/default_languages/static.html.erb
@@ -0,0 +1,7 @@
+<% @website.languages.each do |language| %>
+<%= language.iso_code %>:
+  title: <%= @website %><%# TODO I18n: Traduire le nom du site %>
+  contentDir: content/<%= language.iso_code %>
+  languageCode: <%= language.iso_code %>
+  languageName: <%= language.name %>
+<% end %>
\ No newline at end of file
diff --git a/app/views/admin/communication/websites/configs/permalinks/static.html.erb b/app/views/admin/communication/websites/configs/default_permalinks/static.html.erb
similarity index 100%
rename from app/views/admin/communication/websites/configs/permalinks/static.html.erb
rename to app/views/admin/communication/websites/configs/default_permalinks/static.html.erb
diff --git a/app/views/admin/communication/websites/configs/development_config/static.html.erb b/app/views/admin/communication/websites/configs/development_config/static.html.erb
new file mode 100644
index 0000000000000000000000000000000000000000..a7b621aa3ad165aa2f13b9760a164eeb430ac67c
--- /dev/null
+++ b/app/views/admin/communication/websites/configs/development_config/static.html.erb
@@ -0,0 +1,4 @@
+## LANGUAGE
+<%# TODO I18n: Add "Default language" in Communication::Website %>
+defaultContentLanguage: <%= @website.languages.first.iso_code %>
+defaultContentLanguageInSubdir: <%= @website.languages.many? %>
\ No newline at end of file
diff --git a/app/views/admin/communication/websites/configs/production_config/static.html.erb b/app/views/admin/communication/websites/configs/production_config/static.html.erb
new file mode 100644
index 0000000000000000000000000000000000000000..249cc5b701e9d251b9a162352155a970bd9c88dd
--- /dev/null
+++ b/app/views/admin/communication/websites/configs/production_config/static.html.erb
@@ -0,0 +1,6 @@
+baseURL: <%= @website.url %>
+
+## LANGUAGE
+<%# TODO I18n: Add "Default language" in Communication::Website %>
+defaultContentLanguage: <%= @website.languages.first.iso_code %>
+defaultContentLanguageInSubdir: <%= @website.languages.many? %>
\ No newline at end of file