diff --git a/backend/resources/emails/fr/register.mustache b/backend/resources/emails/fr/register.mustache
new file mode 100644
index 000000000..b4a530149
--- /dev/null
+++ b/backend/resources/emails/fr/register.mustache
@@ -0,0 +1,17 @@
+-- begin :subject
+Bienvenue sur UXBOX.
+-- end
+
+-- begin :body-text
+Bonjour {{user}}!
+
+Bienvenue sur UXBOX.
+
+L'équipe UXBOX.
+-- end
+
+-- begin :body-html
+
Bonjour {{user}} !
+Bienvenue sur UXBOX.
+L'équipe UXBOX.
+-- end
\ No newline at end of file
diff --git a/frontend/src/uxbox/main/locales/en.cljs b/frontend/src/uxbox/main/locales/en.cljs
index 015382811..32b3a77d0 100644
--- a/frontend/src/uxbox/main/locales/en.cljs
+++ b/frontend/src/uxbox/main/locales/en.cljs
@@ -60,21 +60,21 @@
"settings.profile-saved" "Profile saved successfully!"
"settings.password-saved" "Password saved successfully!"
- "history.alert-message" "You are seeng version %s"
+ "history.alert-message" "You are seeing version %s"
"errors.api.form.old-password-not-match" "Incorrect old password"
- "errors.api.form.email-already-exists" "The email is already in use by other user."
- "errors.api.form.username-already-exists" "The username is already in use by other user."
+ "errors.api.form.email-already-exists" "The email is already in use by another user."
+ "errors.api.form.username-already-exists" "The username is already in use by another user."
"errors.api.form.user-not-exists" "Username or email does not matches any existing user."
"errors.form.required" "This field is mandatory"
"errors.form.string" "Should be string"
"errors.form.number" "Invalid number"
"errors.form.integer" "Invalid integer"
- "errors.form.bool" "Should be bool"
- "errors.form.min-len" "Should be great than %s"
- "errors.form.max-len" "Should be less than %s"
+ "errors.form.bool" "Should be boolean"
+ "errors.form.min-len" "Should be greater than %s"
+ "errors.form.max-len" "Should be lesser than %s"
"errors.form.color" "Should be a valid color string"
"errors.form.password-not-match" "Password does not match"
- "errors.auth.unauthorized" "Username or passwords seems to be wrong."
+ "errors.auth.unauthorized" "Username or password seems to be wrong."
"errors.auth.invalid-recovery-token" "The recovery token is invalid."
"errors.profile.update-password" "Error updating password, probably your old password is wrong."
diff --git a/frontend/src/uxbox/main/locales/fr.cljs b/frontend/src/uxbox/main/locales/fr.cljs
new file mode 100644
index 000000000..8c93fb127
--- /dev/null
+++ b/frontend/src/uxbox/main/locales/fr.cljs
@@ -0,0 +1,85 @@
+;; This Source Code Form is subject to the terms of the Mozilla Public
+;; License, v. 2.0. If a copy of the MPL was not distributed with this
+;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
+;;
+;; Copyright (c) 2015-2016 Andrey Antukh
+;; Copyright (c) 2015-2016 Juan de la Cruz
+
+(ns uxbox.main.locales.en)
+
+(defonce locales
+ {"ds.projects" "PROJETS"
+ "ds.num-projects" ["Nb projets"
+ "%s projet"
+ "%s projets"]
+ "ds.num-colors" ["Nb couleurs"
+ "%s couleur"
+ "%s couleurs"]
+ "ds.num-images" ["Nb images"
+ "%s image"
+ "%s images"]
+ "ds.num-icons" ["Nb icônes"
+ "%s icône"
+ "%s icônes"]
+ "ds.project-ordering" "Trier par"
+ "ds.project-ordering.by-name" "nom"
+ "ds.project-ordering.by-last-update" "dernière mise à jour"
+ "ds.project-ordering.by-creation-date" "date de création"
+ "ds.project-search.placeholder" "Rechercher..."
+
+ "ds.elements" "ÉLÉMENTS"
+ "ds.icons" "ICÔNES"
+ "ds.images" "IMAGES"
+ "ds.colors" "COULEURS"
+ "ds.library-title" "Librairie : "
+ "ds.standard-title" "STANDARD"
+ "ds.your-libraries-title" "VOS LIBRAIRIES"
+ "ds.num-elements" ["%s élément"
+ "%s éléments"]
+
+ "ds.recent-colors" "Couleurs récentes"
+ "ds.element-options" "Options d'élément"
+ "ds.draw-tools" "Outils de dessin"
+ "ds.sitemap" "Plan du site"
+ "ds.document-history" "Historique du document"
+
+ "ds.help.rect" "Boîte (Ctrl + B)"
+ "ds.help.circle" "Cercle (Ctrl + E)"
+ "ds.help.line" "Ligne (Ctrl + L)"
+ "ds.help.text" "Texte"
+ "ds.help.path" "Chemin"
+ "ds.help.curve" "Courbe"
+ "ds.help.ruler" "Règle"
+
+ "auth.message.recovery-token-sent" "Password recovery link sent to your inbox."
+ "auth.message.password-recovered" "Password successfully recovered."
+
+ "settings.profile" "PROFIL"
+ "settings.password" "MOT DE PASSE"
+ "settings.notifications" "NOTIFICATIONS"
+ "settings.profile-saved" "Profil enregistré avec succès!"
+ "settings.password-saved" "Mot de passe enregistré avec succès!"
+
+ "history.alert-message" "Vous voyez la version %s"
+ "errors.api.form.old-password-not-match" "Ancien mot de passe incorrect"
+ "errors.api.form.email-already-exists" "L'email est déjà utilisé par un autre utilisateur."
+ "errors.api.form.username-already-exists" "Le nom d'utilisateur est déjà utilisé par un autre utilisateur."
+ "errors.api.form.user-not-exists" "Le nom d'utilisateur ou l'e-mail ne correspond à aucun utilisateur existant."
+ "errors.form.required" "Ce champ est obligatoire"
+ "errors.form.string" "Devrait être une chaîne de caractères"
+ "errors.form.number" "Nombre invalide"
+ "errors.form.integer" "Entier invalide"
+ "errors.form.bool" "Devrait être un booléen"
+ "errors.form.min-len" "Devrait être supérieur à %s"
+ "errors.form.max-len" "Devrait être inférieur à %s"
+ "errors.form.color" "Devrait être une couleur valide"
+ "errors.form.password-not-match" "Le mot de passe ne correspond pas"
+ "errors.auth.unauthorized" "Le nom d'utilisateur ou le mot de passe semble être faux."
+ "errors.auth.invalid-recovery-token" "Le jeton de récupération n'est pas valide."
+ "errors.profile.update-password" "Erreur lors de la mise à jour du mot de passe, votre ancien mot de passe est probablement incorrect."
+
+ "errors.network" "Impossible de se connecter au serveur principal."
+ "errors.generic" "Quelque chose c'est mal passé."
+ "errors.conflict" "Conflit sur la sauvegarde des données, actualisez et réessayez."
+
+ })