mirror of
https://github.com/BreizhHardware/portfolio.git
synced 2026-01-18 16:37:22 +01:00
feat: Rename i18n.js to i18n.ts and update language handling in translations
This commit is contained in:
@@ -8,14 +8,38 @@
|
||||
},
|
||||
"projects": {
|
||||
"title": "My projects",
|
||||
"Front end starter.description": "My personal starter for front end projects",
|
||||
"Project C - ISEN CIR 1.description": "End of 1st year project at ISEN Nantes",
|
||||
"Projet robot.description": "Robot project with the Modelec ISEN club for the French robotics cup (Development and deployment on Raspberry Pi)",
|
||||
"MercuryCloud.description": "Game server and VPS hosting project. Technical support position, administrator of VPS, Game and web services.",
|
||||
"Projet C++ - ISEN CIR 2.description": "End of 4th semester project at ISEN Nantes. Creation of a Tower Defense type game in C++ with the QT6 library.",
|
||||
"Github NTFY.description": "Notification project for github and dockerhub releases that sends notifications on ntfy, gotify and discord.",
|
||||
"Projet C++ - ISEN CIPA 3.description": "Fish school behavior simulation game project in C++ with the SLD2 library, with multiplayer support.",
|
||||
"Alternance Horoquartz.description": "Development of an update system for Horoquartz products."
|
||||
"Front end starter": {
|
||||
"title": "Front end starter",
|
||||
"description": "My personal starter for front end projects"
|
||||
},
|
||||
"Project C - ISEN CIR 1": {
|
||||
"title": "C Project - ISEN CIR 1",
|
||||
"description": "End of 1st year project at ISEN Nantes"
|
||||
},
|
||||
"Projet robot": {
|
||||
"title": "Robot Project",
|
||||
"description": "Robot project with the Modelec ISEN club for the French robotics cup (Development and deployment on Raspberry Pi)"
|
||||
},
|
||||
"MercuryCloud": {
|
||||
"title": "MercuryCloud",
|
||||
"description": "Game server and VPS hosting project. Technical support position, administrator of VPS, Game and web services."
|
||||
},
|
||||
"Projet C++ - ISEN CIR 2": {
|
||||
"title": "C++ Project - ISEN CIR 2",
|
||||
"description": "End of 4th semester project at ISEN Nantes. Development of a Tower Defense type game in C++ with the QT6 library."
|
||||
},
|
||||
"Github NTFY": {
|
||||
"title": "Github NTFY",
|
||||
"description": "Notification project for github and dockerhub releases that sends notifications on ntfy, gotify and discord."
|
||||
},
|
||||
"Projet C++ - ISEN CIPA 3": {
|
||||
"title": "C++ Project - ISEN CIPA 3",
|
||||
"description": "Fish school behavior simulation game project in C++ with the SLD2 library, with multiplayer support."
|
||||
},
|
||||
"Alternance Horoquartz": {
|
||||
"title": "Horoquartz Work-study",
|
||||
"description": "Development of an update system for Horoquartz products."
|
||||
}
|
||||
},
|
||||
"cv": {
|
||||
"title": "My resume",
|
||||
|
||||
@@ -1,21 +1,45 @@
|
||||
{
|
||||
"about": {
|
||||
"title": "A propos de moi",
|
||||
"description": "Je suis étudiant en 4e année à l'ISEN Nantes en alternance chez Horoquartz. Je suis passionné par l'informatique. J'ai appris à coder en autodidacte et je suis actuellement en train d'apprendre le Rust et le Go. Je suis également passionné par l'électronique et le hardware. Je possède un homelab composé de 3 serveur, un DELL T320, un DELL T330 et un Dell Precision T3610 les 3 sous proxmox."
|
||||
"description": "Je suis étudiant en 4e année à l'ISEN Nantes en alternance chez Horoquartz. Je suis passionné par l'informatique. J'ai appris à coder en autodidacte et je suis actuellement en train d'apprendre le Rust et le Go. Je suis également passionné par l'électronique et le hardware. J'ai construit un homelab composé de 3 serveur, un DELL T320, un DELL T330 et un Dell Precision T3610 les 3 sous proxmox."
|
||||
},
|
||||
"card": {
|
||||
"title": "Etudiant en 4e année a l'ISEN Nantes en alternance chez Horoquartz"
|
||||
},
|
||||
"projects": {
|
||||
"title": "Mes projets",
|
||||
"Front end starter.description": "Mon starter personnel pour projet front end",
|
||||
"Project C - ISEN CIR 1.description": "Projet de fin de 1ere année à l'ISEN Nantes",
|
||||
"Projet robot.description": "Projet de robot avec le club Modelec ISEN pour la coupe de france de robotique (Developpement et déploiment sur Raspberry Pi)",
|
||||
"MercuryCloud.description": "Projet d'herbergeur de serveur de jeu et VPS. Poste de support technique, administrateur des service VPS, Game et web.",
|
||||
"Projet C++ - ISEN CIR 2.description": "Projet de fin de 4e semestre à l'ISEN Nantes. Création d'un jeu de type Tower Defense en C++ avec la librairie QT6.",
|
||||
"Github NTFY.description": "Projet de notification pour les releases github et dockerhub qui envoie des notifications sur ntfy, gotify et discord.",
|
||||
"Projet C++ - ISEN CIPA 3.description": "Projet de jeu de simulation de comportement de banc de poisson en C++ avec la librairie SLD2, avec support du multijoueur.",
|
||||
"Alternance Horoquartz.description": "Développement d'un système de mise à jour pour les produits Horoquartz."
|
||||
"Front end starter": {
|
||||
"title": "Front end starter",
|
||||
"description": "Mon starter personnel pour projet front end"
|
||||
},
|
||||
"Project C - ISEN CIR 1": {
|
||||
"title": "Projet C - ISEN CIR 1",
|
||||
"description": "Projet de fin de 1ere année à l'ISEN Nantes"
|
||||
},
|
||||
"Projet robot": {
|
||||
"title": "Projet robot",
|
||||
"description": "Projet de robot avec le club Modelec ISEN pour la coupe de france de robotique (Developpement et déploiment sur Raspberry Pi)"
|
||||
},
|
||||
"MercuryCloud": {
|
||||
"title": "MercuryCloud",
|
||||
"description": "Projet d'herbergeur de serveur de jeu et VPS. Poste de support technique, administrateur des service VPS, Game et web."
|
||||
},
|
||||
"Projet C++ - ISEN CIR 2": {
|
||||
"title": "Projet C++ - ISEN CIR 2",
|
||||
"description": "Projet de fin de 4e semestre à l'ISEN Nantes. Création d'un jeu de type Tower Defense en C++ avec la librairie QT6."
|
||||
},
|
||||
"Github NTFY": {
|
||||
"title": "Github NTFY",
|
||||
"description": "Projet de notification pour les releases github et dockerhub qui envoient des notifications sur ntfy, gotify et discord."
|
||||
},
|
||||
"Projet C++ - ISEN CIPA 3": {
|
||||
"title": "Projet C++ - ISEN CIPA 3",
|
||||
"description": "Projet de jeu de simulation de comportement de banc de poisson en C++ avec la librairie SLD2, avec support du multijoueur."
|
||||
},
|
||||
"Alternance Horoquartz": {
|
||||
"title": "Alternance Horoquartz",
|
||||
"description": "Développement d'un système de mise à jour pour les produits Horoquartz."
|
||||
}
|
||||
},
|
||||
"cv": {
|
||||
"title": "Mon CV",
|
||||
@@ -136,7 +160,7 @@
|
||||
"current": true,
|
||||
"description": [
|
||||
"Développement d'un système de mise à jour pour les produits Horoquartz",
|
||||
"Conception et implémentation d'APIs REST avec Node.js et Go",
|
||||
"Mise en oeuvre d'APIs REST avec Node.js et Go",
|
||||
"Gestion des bases de données PostgreSQL",
|
||||
"Déploiement avec Docker et Kubernetes sur Azure"
|
||||
],
|
||||
|
||||
@@ -16,7 +16,7 @@ import ContactSection from "./components/ContactSection";
|
||||
import TimelineSection from "./components/TimelineSection";
|
||||
import data from "./assets/DATA";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import i18n from './i18n.js';
|
||||
import i18n from './i18n';
|
||||
import {createRoot} from "react-dom/client";
|
||||
import GitHubStatsSection from 'components/GitHubStatsSection';
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ const ProjectCard = ({ project }: ProjectCardProps) => {
|
||||
<div className="group w-full sm:w-5/12 m-4 mx-auto p-6 rounded-xl border-2 border-gray-300 dark:border-gray-700">
|
||||
<a href={link}>
|
||||
<h1 className="text-xl text-center font-bold dark:text-gray-200">
|
||||
{title}{" "}
|
||||
{t(`projects.${project.title}.title`)}{" "}
|
||||
<FaExternalLinkAlt className="inline align-baseline" />
|
||||
</h1>
|
||||
</a>
|
||||
|
||||
@@ -2,11 +2,14 @@ import i18n from "i18next";
|
||||
import { initReactI18next } from "react-i18next";
|
||||
import HttpBackend from "i18next-http-backend";
|
||||
|
||||
const savedLang = localStorage.getItem('lang');
|
||||
const browserLang = navigator.language.startsWith('fr') ? 'fr' : 'en';
|
||||
|
||||
i18n
|
||||
.use(HttpBackend)
|
||||
.use(initReactI18next)
|
||||
.init({
|
||||
lng: navigator.language.startsWith('fr') ? 'fr' : 'en',
|
||||
lng: savedLang || browserLang,
|
||||
fallbackLng: "en",
|
||||
interpolation: {
|
||||
escapeValue: false
|
||||
Reference in New Issue
Block a user