diff --git a/src/components/Hero.jsx b/src/components/Hero.jsx new file mode 100644 index 0000000..e69de29 diff --git a/src/components/Projects.jsx b/src/components/Projects.jsx new file mode 100644 index 0000000..ef6b039 --- /dev/null +++ b/src/components/Projects.jsx @@ -0,0 +1,70 @@ +import { React } from "react"; + +const projectsData = [ + { + title: "Assist Senza Danni", + description: "Piattaforma web dedicata all'assistenza e alla tutela, sviluppata con un'interfaccia pulita e incentrata sull'esperienza utente.", + link: "https://assistasenzadanni.it", + tags: ["React", "Web App", "UI/UX"] + }, + { + title: "PWSCam", + description: "Applicazione web interattiva ospitata su Vercel, orientata a soluzioni tecnologiche e di streaming/visualizzazione.", + link: "https://pwscam.vercel.app", + tags: ["Vercel", "Frontend", "React"] + }, + { + title: "Magri Cambi Hub", + description: "Gestionale e portale dedicato ai ricambi, integrato con container Docker dedicati e database relazionali sul server.", + link: "https://magricambi.andreavillari.it", + tags: ["Docker", "MySQL", "Full Stack"] + } + ]; + + export default function Projects() { + return ( + + + Progetti in Evidenza + Una selezione delle mie realizzazioni web e infrastrutturali. + + + + {projectsData.map((project, index) => ( + + + + {project.title} + + + {project.description} + + + + + + {project.tags.map((tag, i) => ( + + {tag} + + ))} + + + Visita il sito + → + + + + ))} + + + ); + } \ No newline at end of file diff --git a/src/components/Skills.jsx b/src/components/Skills.jsx new file mode 100644 index 0000000..45c6ae5 --- /dev/null +++ b/src/components/Skills.jsx @@ -0,0 +1,36 @@ +import { React } from "react"; + +const skills = [ + { category: "Frontend", items: ["React", "Vite", "JavaScript (ES6+)", "Tailwind CSS", "HTML5 / CSS3"] }, + { category: "Backend & Database", items: ["Node.js", "Express", "MySQL", "MongoDB"] }, + { category: "DevOps & SysAdmin", items: ["Docker & Compose", "Nginx (Reverse Proxy)", "Linux (Ubuntu Server)", "Git / Forgejo"] } + ]; + + export default function Skills() { + return ( + + + Competenze & Tecnologie + Gli strumenti che utilizzo per trasformare le idee in prodotti reali. + + + + {skills.map((group, index) => ( + + + // {group.category} + + + {group.items.map((skill, i) => ( + + + {skill} + + ))} + + + ))} + + + ); + } \ No newline at end of file
Una selezione delle mie realizzazioni web e infrastrutturali.
+ {project.description} +
Gli strumenti che utilizzo per trasformare le idee in prodotti reali.