Footer.jsx
vibe_coding/src/components/Footer.jsx
import { Link } from 'react-router-dom';
import { useTranslation } from 'react-i18next';
export default function Footer() {
const { t } = useTranslation();
const year = new Date().getFullYear();
return (
<footer className="footer">
<div className="footer__inner">
<div className="footer__brand">
<h3>{t('brand.name')}</h3>
<p>{t('brand.tagline')}</p>
</div>
<div>
<h4>{t('nav.projects')}</h4>
<Link to="/proyectos">{t('home.viewAll')}</Link>
<Link to="/sobre-mi">{t('nav.about')}</Link>
<Link to="/cv">{t('nav.cv')}</Link>
<Link to="/contacto">{t('nav.contact')}</Link>
</div>
<div>
<h4>{t('contact.infoTitle')}</h4>
<a href="mailto:hola@chijia.design">hola@chijia.design</a>
<a
href="https://www.linkedin.com/"
target="_blank"
rel="noopener noreferrer"
>
LinkedIn
</a>
<a>{t('contact.city')}</a>
</div>
</div>
<div className="footer__bottom">
<span>© {year} Chijia · {t('footer.rights')}</span>
<span>{t('footer.madeIn')}</span>
</div>
</footer>
);
}
Bài viết liên quan
App.jsx
App.jsx — javascript source code from the vibe coding learning materials (vibe_coding/src/App.jsx).
Đọc bài viết →LanguageSwitcher.jsx
LanguageSwitcher.jsx — javascript source code from the vibe coding learning materials (vibe_coding/src/components/LanguageSwitcher.jsx).
Đọc bài viết →Navbar.jsx
Navbar.jsx — javascript source code from the vibe coding learning materials (vibe_coding/src/components/Navbar.jsx).
Đọc bài viết →ProjectCard.jsx
ProjectCard.jsx — javascript source code from the vibe coding learning materials (vibe_coding/src/components/ProjectCard.jsx).
Đọc bài viết →ScrollToTop.jsx
ScrollToTop.jsx — javascript source code from the vibe coding learning materials (vibe_coding/src/components/ScrollToTop.jsx).
Đọc bài viết →projects.js
projects.js — javascript source code from the vibe coding learning materials (vibe_coding/src/data/projects.js).
Đọc bài viết →