diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..b58b603 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,5 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..03d9549 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..b0c240b --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/personalwebsite.iml b/.idea/personalwebsite.iml new file mode 100644 index 0000000..24643cc --- /dev/null +++ b/.idea/personalwebsite.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/globals.css b/app/globals.css index 13d40b8..78e9501 100644 --- a/app/globals.css +++ b/app/globals.css @@ -25,3 +25,68 @@ body { text-wrap: balance; } } + +@layer base { + :root { + --background: 0 0% 100%; + --foreground: 0 0% 3.9%; + --card: 0 0% 100%; + --card-foreground: 0 0% 3.9%; + --popover: 0 0% 100%; + --popover-foreground: 0 0% 3.9%; + --primary: 0 0% 9%; + --primary-foreground: 0 0% 98%; + --secondary: 0 0% 96.1%; + --secondary-foreground: 0 0% 9%; + --muted: 0 0% 96.1%; + --muted-foreground: 0 0% 45.1%; + --accent: 0 0% 96.1%; + --accent-foreground: 0 0% 9%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 0 0% 98%; + --border: 0 0% 89.8%; + --input: 0 0% 89.8%; + --ring: 0 0% 3.9%; + --chart-1: 12 76% 61%; + --chart-2: 173 58% 39%; + --chart-3: 197 37% 24%; + --chart-4: 43 74% 66%; + --chart-5: 27 87% 67%; + --radius: 0.5rem; + } + .dark { + --background: 0 0% 3.9%; + --foreground: 0 0% 98%; + --card: 0 0% 3.9%; + --card-foreground: 0 0% 98%; + --popover: 0 0% 3.9%; + --popover-foreground: 0 0% 98%; + --primary: 0 0% 98%; + --primary-foreground: 0 0% 9%; + --secondary: 0 0% 14.9%; + --secondary-foreground: 0 0% 98%; + --muted: 0 0% 14.9%; + --muted-foreground: 0 0% 63.9%; + --accent: 0 0% 14.9%; + --accent-foreground: 0 0% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 0 0% 98%; + --border: 0 0% 14.9%; + --input: 0 0% 14.9%; + --ring: 0 0% 83.1%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + } +} + +@layer base { + * { + @apply border-border; + } + body { + @apply bg-background text-foreground; + } +} diff --git a/app/layout.tsx b/app/layout.tsx index a36cde0..14f57b9 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -14,8 +14,8 @@ const geistMono = localFont({ }); export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", + title: "Quintavalle Pietro", + description: "My personal website", }; export default function RootLayout({ diff --git a/app/page.tsx b/app/page.tsx index 433c8aa..6a46cd6 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,101 +1,260 @@ -import Image from "next/image"; +import Link from "next/link" +import { Input } from "@/components/ui/input" +import { Textarea } from "@/components/ui/textarea" +import { Button } from "@/components/ui/button" +import { JSX, SVGProps } from "react" export default function Home() { return ( -
-
- Next.js logo -
    -
  1. - Get started by editing{" "} - - app/page.tsx - - . -
  2. -
  3. Save and see your changes instantly.
  4. -
- -
- - Vercel logomark - Deploy now - - - Read our docs - -
-
- -
- ); +
+
+
+ +

Pietro Quintavalle

+
+ +
+
+
+

About Me

+
+

+ Hello! I'm Pietro Quintavalle, a dedicated IT hobbyist with a strong foundation in IT support and + data analytics who's currently pursuing a bachelor in Economics. + My passion lies in leveraging technology to solve complex problems and derive meaningful insights from + data. + With a combination of technical skills and analytical thinking, I'm equipped to tackle challenges + in + both IT infrastructure and data-driven decision-making. +

+
+
+
+

Skills

+
+ {[ + { + title: "IT & Networking", + skills: [ + "IT Support", "Troubleshooting", "Computer Networking", + "Network Architecture", "Network Model", "Computer Architecture", + "Network Security", "Cloud Computing" + ] + }, + { + title: "Data Science & Analytics", + skills: [ + "Data Analysis", "Data Visualization", "Data Management", + "General Statistics", "Data Science", "Business Analysis" + ] + }, + { + title: "Programming & Software", + skills: [ + "Python Programming", "R Programming", "SQL", + "Computer Programming", "Numpy", "Pandas", + "Spreadsheet Software" + ] + }, + { + title: "Business & Communication", + skills: [ + "Business Communication", "Accounting", + "Leadership and Management", "Critical Thinking", + "Human Computer Interaction" + ] + }, + { + title: "Tools & Platforms", + skills: [ + "Tableau", "Git", "Linux", "Microsoft Office Suite" + ] + }, + { + title: "Methodologies", + skills: [ + "Data-Driven Decision Making", "Agile", + "IT Service Management", "Project Management" + ] + }, + ].map((category, index) => ( +
+

{category.title}

+
    + {category.skills.map((skill, skillIndex) => ( +
  • {skill}
  • + ))} +
+
+ ))} +
+
+
+

Certifications

+
+
+

Google IT Support Professional Certificate

+ +
+
+

Google Data Analytics Professional Certificate

+ +
+
+

IBM Python for Data Science, AI & Development

+ +
+
+
+
+

Portfolio

+
+ {[ + { + title: "password-generator", + description: "A unique and interactive password generator built with Next.js and React. ", + technologies: ["Nextjs", "Encryption", "Typescript"], + githubLink: "#" + }, + { + title: "Valgo", + description: "A website for visualizing sorting algorithms for the visual learners out there.", + technologies: ["Typescript", "React", "Algorithms"], + githubLink: "#" + }, + { + title: "Gravity", + description: "3D Gravity Simulator is a C++ program that visualizes the gravitational interactions between celestial bodies", + technologies: ["C++", "OpenGL", "Physics", "3D", "Simulation", "Cmake", "VCPKG"], + githubLink: "#" + }, + { + title: "Boston Housing Price Prediction", + description: "A simulation of the Boston Housing Price Prediction project that involves building a machine learning model to predict housing prices. ", + technologies: ["Python", "Machine Learning", "Data Analysis", "Data Visualization", "Jupyter Notebook", "Probability", "Statistics"], + githubLink: "#" + }, + { + title: "Forest Fire Simulation", + description: "An assignment for the Probability & Statistics course at USI that aims to model the spread of forest fires over a grid representing a forest landscape.", + technologies: ["Statistics", "Python", "Jupyter Notebook", "Simulation", "Probability"], + githubLink: "#" + }, + { + title: "Network Monitoring Tool", + description: "A tool for monitoring and analyzing network traffic, demonstrating networking skills and data visualization.", + technologies: ["Python", "Scapy", "Matplotlib"], + githubLink: "#" + } + ].map((project, index) => ( +
+

{project.title}

+

{project.description}

+
+ {project.technologies.map((tech, techIndex) => ( + + {tech} + + ))} +
+
+ + View on GitHub + +
+
+ ))} +
+
+
+

Contact Me

+
+
+ + +
+
+ + +
+
+ +