feat: add Shelbys Bar project with new translations and online status.

This commit is contained in:
Van Leemput Dayron
2025-11-26 18:01:17 +01:00
parent f4a5a6e396
commit 806ef5e1d8
2 changed files with 53 additions and 22 deletions

View File

@@ -1,5 +1,5 @@
import { motion } from 'framer-motion'; import { motion } from 'framer-motion';
import { ExternalLink, Github, MapPin } from 'lucide-react'; import { ExternalLink, Github, MapPin, Wine } from 'lucide-react';
import { useLanguage } from '../contexts/LanguageContext'; import { useLanguage } from '../contexts/LanguageContext';
const Projects = () => { const Projects = () => {
@@ -25,6 +25,25 @@ const Projects = () => {
}, },
image: "/travel-mate-preview.png" // Ajoutez votre image dans le dossier public image: "/travel-mate-preview.png" // Ajoutez votre image dans le dossier public
}, },
{
id: 3,
title: t('projects.shelbys.title'),
description: t('projects.shelbys.description'),
status: t('projects.status.online'),
technologies: ["React", "Vite", "TailwindCSS", "Framer Motion"], // Inferring stack based on modern standards and user's other projects
features: [
t('projects.shelbys.feature1'),
t('projects.shelbys.feature2'),
t('projects.shelbys.feature4')
],
color: "#E91E63", // A distinct color
icon: <Wine size={24} />,
links: {
github: "#", // Assuming private or not provided
demo: "https://shelbys.be"
},
image: "/shelbys-preview.png" // Placeholder, user might need to add this
},
{ {
id: 2, id: 2,
title: t('projects.portfolio.title'), title: t('projects.portfolio.title'),
@@ -106,7 +125,7 @@ const Projects = () => {
}} }}
> >
<div className="project-header"> <div className="project-header">
<div <div
className="project-icon" className="project-icon"
style={{ backgroundColor: `${project.color}20`, color: project.color }} style={{ backgroundColor: `${project.color}20`, color: project.color }}
> >
@@ -130,9 +149,9 @@ const Projects = () => {
className="tech-tag" className="tech-tag"
initial={{ opacity: 0, scale: 0.8 }} initial={{ opacity: 0, scale: 0.8 }}
whileInView={{ opacity: 1, scale: 1 }} whileInView={{ opacity: 1, scale: 1 }}
transition={{ transition={{
duration: 0.3, duration: 0.3,
delay: (index * 0.1) + (techIndex * 0.05) delay: (index * 0.1) + (techIndex * 0.05)
}} }}
viewport={{ once: true }} viewport={{ once: true }}
> >
@@ -149,9 +168,9 @@ const Projects = () => {
key={featureIndex} key={featureIndex}
initial={{ opacity: 0, x: -20 }} initial={{ opacity: 0, x: -20 }}
whileInView={{ opacity: 1, x: 0 }} whileInView={{ opacity: 1, x: 0 }}
transition={{ transition={{
duration: 0.5, duration: 0.5,
delay: (index * 0.2) + (featureIndex * 0.1) delay: (index * 0.2) + (featureIndex * 0.1)
}} }}
viewport={{ once: true }} viewport={{ once: true }}
> >

View File

@@ -25,7 +25,7 @@ const translations = {
'nav.projects': 'Projets', 'nav.projects': 'Projets',
'nav.education': 'Formation', 'nav.education': 'Formation',
'nav.contact': 'Contact', 'nav.contact': 'Contact',
// Boutons // Boutons
'btn.changeTheme': 'Changer de thème', 'btn.changeTheme': 'Changer de thème',
'btn.menu': 'Menu', 'btn.menu': 'Menu',
@@ -33,13 +33,13 @@ const translations = {
'btn.downloadCV': 'Télécharger CV', 'btn.downloadCV': 'Télécharger CV',
'btn.viewProjects': 'Voir mes projets', 'btn.viewProjects': 'Voir mes projets',
'btn.contactMe': 'Me contacter', 'btn.contactMe': 'Me contacter',
// Hero // Hero
'hero.greeting': 'Salut, je suis', 'hero.greeting': 'Salut, je suis',
'hero.title': 'Dayron Van Leemput', 'hero.title': 'Dayron Van Leemput',
'hero.subtitle': 'Étudiant en Technologies de l\'Informatique', 'hero.subtitle': 'Étudiant en Technologies de l\'Informatique',
'hero.description': 'Bac 3 à la HELHa de Tournai | Jeune développeur passionné par les nouvelles technologies et le développement d\'applications innovantes', 'hero.description': 'Bac 3 à la HELHa de Tournai | Jeune développeur passionné par les nouvelles technologies et le développement d\'applications innovantes',
// About // About
'about.title': 'À propos de moi', 'about.title': 'À propos de moi',
'about.subtitle': 'Découvrez mon parcours et mes passions', 'about.subtitle': 'Découvrez mon parcours et mes passions',
@@ -60,7 +60,7 @@ const translations = {
'about.quote.title': 'En quelques mots', 'about.quote.title': 'En quelques mots',
'about.quote.content': 'La technologie n\'est rien. Ce qui est important, c\'est d\'avoir la foi en les gens, qu\'ils soient fondamentalement bons et intelligents, et si vous leur donnez des outils, ils feront des choses merveilleuses avec.', 'about.quote.content': 'La technologie n\'est rien. Ce qui est important, c\'est d\'avoir la foi en les gens, qu\'ils soient fondamentalement bons et intelligents, et si vous leur donnez des outils, ils feront des choses merveilleuses avec.',
'about.quote.author': 'Steve Jobs', 'about.quote.author': 'Steve Jobs',
// Skills // Skills
'skills.title': 'Mes Compétences', 'skills.title': 'Mes Compétences',
'skills.subtitle': 'Technologies et outils que je maîtrise', 'skills.subtitle': 'Technologies et outils que je maîtrise',
@@ -73,12 +73,13 @@ const translations = {
'skills.teamwork': 'Travail en équipe', 'skills.teamwork': 'Travail en équipe',
'skills.continuousLearning': 'Apprentissage continu', 'skills.continuousLearning': 'Apprentissage continu',
'skills.communication': 'Communication', 'skills.communication': 'Communication',
// Projects // Projects
'projects.title': 'Mes Projets', 'projects.title': 'Mes Projets',
'projects.subtitle': 'Découvrez mes réalisations et mes expériences', 'projects.subtitle': 'Découvrez mes réalisations et mes expériences',
'projects.status.available': 'Bientôt disponible sur App Store et Play Store', 'projects.status.available': 'Bientôt disponible sur App Store et Play Store',
'projects.status.current': 'Projet actuel', 'projects.status.current': 'Projet actuel',
'projects.status.online': 'En ligne',
'projects.features': 'Fonctionnalités principales :', 'projects.features': 'Fonctionnalités principales :',
'projects.btn.code': 'Code', 'projects.btn.code': 'Code',
'projects.btn.viewProject': 'Voir le projet', 'projects.btn.viewProject': 'Voir le projet',
@@ -94,7 +95,12 @@ const translations = {
'projects.portfolio.feature2': 'Animations fluides', 'projects.portfolio.feature2': 'Animations fluides',
'projects.portfolio.feature3': 'Mode sombre/clair', 'projects.portfolio.feature3': 'Mode sombre/clair',
'projects.portfolio.feature4': 'Performance optimisée', 'projects.portfolio.feature4': 'Performance optimisée',
'projects.shelbys.title': 'Shelbys Bar',
'projects.shelbys.description': 'Site vitrine élégant pour le bar Shelbys Bar. Présente l\'ambiance, le menu et les événements du bar avec un design moderne et immersif.',
'projects.shelbys.feature1': 'Design moderne et immersif',
'projects.shelbys.feature2': 'Présentation du menu',
'projects.shelbys.feature4': 'Informations pratiques',
// Education // Education
'education.title': 'Formation', 'education.title': 'Formation',
'education.subtitle': 'Mon parcours académique et professionnel', 'education.subtitle': 'Mon parcours académique et professionnel',
@@ -123,7 +129,7 @@ const translations = {
'education.cert2.title': 'React & TypeScript', 'education.cert2.title': 'React & TypeScript',
'education.cert2.provider': 'Projets personnels', 'education.cert2.provider': 'Projets personnels',
'education.cert2.date': '2024', 'education.cert2.date': '2024',
// Contact // Contact
'contact.title': 'Contactez-moi', 'contact.title': 'Contactez-moi',
'contact.subtitle': 'Une question, un projet ou simplement envie d\'échanger ? N\'hésitez pas à me contacter !', 'contact.subtitle': 'Une question, un projet ou simplement envie d\'échanger ? N\'hésitez pas à me contacter !',
@@ -147,7 +153,7 @@ const translations = {
'nav.projects': 'Projects', 'nav.projects': 'Projects',
'nav.education': 'Education', 'nav.education': 'Education',
'nav.contact': 'Contact', 'nav.contact': 'Contact',
// Boutons // Boutons
'btn.changeTheme': 'Change theme', 'btn.changeTheme': 'Change theme',
'btn.menu': 'Menu', 'btn.menu': 'Menu',
@@ -155,13 +161,13 @@ const translations = {
'btn.downloadCV': 'Download CV', 'btn.downloadCV': 'Download CV',
'btn.viewProjects': 'View my projects', 'btn.viewProjects': 'View my projects',
'btn.contactMe': 'Contact me', 'btn.contactMe': 'Contact me',
// Hero // Hero
'hero.greeting': 'Hi, I am', 'hero.greeting': 'Hi, I am',
'hero.title': 'Dayron Van Leemput', 'hero.title': 'Dayron Van Leemput',
'hero.subtitle': 'Computer Technology Student', 'hero.subtitle': 'Computer Technology Student',
'hero.description': 'Bachelor 3 at HELHa Tournai | Young developer passionate about new technologies and innovative application development', 'hero.description': 'Bachelor 3 at HELHa Tournai | Young developer passionate about new technologies and innovative application development',
// About // About
'about.title': 'About me', 'about.title': 'About me',
'about.subtitle': 'Discover my journey and passions', 'about.subtitle': 'Discover my journey and passions',
@@ -182,7 +188,7 @@ const translations = {
'about.quote.title': 'In a few words', 'about.quote.title': 'In a few words',
'about.quote.content': 'Technology is nothing. What\'s important is that you have a faith in people, that they\'re basically good and smart, and if you give them tools, they\'ll do wonderful things with them.', 'about.quote.content': 'Technology is nothing. What\'s important is that you have a faith in people, that they\'re basically good and smart, and if you give them tools, they\'ll do wonderful things with them.',
'about.quote.author': 'Steve Jobs', 'about.quote.author': 'Steve Jobs',
// Skills // Skills
'skills.title': 'My Skills', 'skills.title': 'My Skills',
'skills.subtitle': 'Technologies and tools I master', 'skills.subtitle': 'Technologies and tools I master',
@@ -195,12 +201,13 @@ const translations = {
'skills.teamwork': 'Teamwork', 'skills.teamwork': 'Teamwork',
'skills.continuousLearning': 'Continuous learning', 'skills.continuousLearning': 'Continuous learning',
'skills.communication': 'Communication', 'skills.communication': 'Communication',
// Projects // Projects
'projects.title': 'My Projects', 'projects.title': 'My Projects',
'projects.subtitle': 'Discover my achievements and experiences', 'projects.subtitle': 'Discover my achievements and experiences',
'projects.status.available': 'Coming soon on App Store and Play Store', 'projects.status.available': 'Coming soon on App Store and Play Store',
'projects.status.current': 'Current project', 'projects.status.current': 'Current project',
'projects.status.online': 'Online',
'projects.features': 'Main features:', 'projects.features': 'Main features:',
'projects.btn.code': 'Code', 'projects.btn.code': 'Code',
'projects.btn.viewProject': 'View project', 'projects.btn.viewProject': 'View project',
@@ -216,7 +223,12 @@ const translations = {
'projects.portfolio.feature2': 'Fluid animations', 'projects.portfolio.feature2': 'Fluid animations',
'projects.portfolio.feature3': 'Dark/light mode', 'projects.portfolio.feature3': 'Dark/light mode',
'projects.portfolio.feature4': 'Optimized performance', 'projects.portfolio.feature4': 'Optimized performance',
'projects.shelbys.title': 'Shelbys Bar',
'projects.shelbys.description': 'Elegant showcase website for Shelbys Bar. Presents the atmosphere, menu, and events of the bar with a modern and immersive design.',
'projects.shelbys.feature1': 'Modern and immersive design',
'projects.shelbys.feature2': 'Menu presentation',
'projects.shelbys.feature4': 'Practical information',
// Education // Education
'education.title': 'Education', 'education.title': 'Education',
'education.subtitle': 'My academic and professional journey', 'education.subtitle': 'My academic and professional journey',
@@ -245,7 +257,7 @@ const translations = {
'education.cert2.title': 'React & TypeScript', 'education.cert2.title': 'React & TypeScript',
'education.cert2.provider': 'Personal projects', 'education.cert2.provider': 'Personal projects',
'education.cert2.date': '2024', 'education.cert2.date': '2024',
// Contact // Contact
'contact.title': 'Contact me', 'contact.title': 'Contact me',
'contact.subtitle': 'A question, a project or just want to chat? Feel free to contact me!', 'contact.subtitle': 'A question, a project or just want to chat? Feel free to contact me!',