diff --git a/src/App.jsx b/src/App.jsx index fd780e7..639647e 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -8,6 +8,7 @@ import MobileMenu from "./components/MobileMenu" import Home from "./components/sections/Home" import About from "./components/sections/About" import Projects from "./components/sections/Projects" +import Contact from "./components/sections/Contact" function App() { const [isLoaded, setIsLoaded] = useState(false); @@ -22,6 +23,7 @@ function App() { + ) diff --git a/src/components/sections/About.jsx b/src/components/sections/About.jsx index f03cb71..7eb8d48 100644 --- a/src/components/sections/About.jsx +++ b/src/components/sections/About.jsx @@ -185,12 +185,12 @@ function About() { About Me -
+

Due to my passion for computer science and everything related, I managed to gather skills in multiple domains.

-
+

Cybersecurity

@@ -209,7 +209,7 @@ function About() {
-
+

Programming & Development

@@ -228,7 +228,7 @@ function About() {
-
+

Network

@@ -247,7 +247,7 @@ function About() {
-
+

System

@@ -266,7 +266,7 @@ function About() {
-
+

Project Management

@@ -285,7 +285,7 @@ function About() {
-
+

Language

@@ -307,13 +307,13 @@ function About() {
-
+

Education

    {education.map((data, key) => ( -
    +

    {data["name"]}

    {data["establishment"]} {data["city"]}

    {data["graduated"] ? "Graduated in " : "To be completed in "}{data["graduation_year"]}

    @@ -325,7 +325,7 @@ function About() {
      {certifications.map((data, key) => ( -
      +

      {data["name"]}

      Obtained: {data["date_obtained"]} {data["city"]}

      {data["expiration"] ? `Expire ${data["expiration"]}` : ""}

      @@ -333,13 +333,13 @@ function About() { ))}
    -
    +

    Work Experience

    {workExperience.map((data, key) => ( -
    +

    {data["name"]}

    {data["company"]}

    {data["period"]} | {data["place"]}

    diff --git a/src/components/sections/Contact.jsx b/src/components/sections/Contact.jsx index abbf737..a468f23 100644 --- a/src/components/sections/Contact.jsx +++ b/src/components/sections/Contact.jsx @@ -1,7 +1,49 @@ -function Contact() { - return ( -
    +import RevealOnScroll from "../RevealOnScroll"; +import { FaLinkedin, FaGithub, FaGitlab } from "react-icons/fa"; +import { CiMail } from "react-icons/ci"; +import { PiMicrosoftOutlookLogoFill } from "react-icons/pi"; + + +function Contact() { + const contacts = [ + { + "icon": , + "name": "LinkedIn", + "link": "https://www.linkedin.com/in/alexis-pencrane-2100512a2/", + }, + { + "icon": , + "name": "Github", + "link": "https://github.com/Ploc300", + }, + { + "icon": , + "name": "Github", + "link": "https://gitlab.plocserv.fr/ploc300", + }, + { + "icon": , + "name": "Mail", + "link": "mailto:alexis.pen@hotmail.com", + }, + + ] + + return ( +
    + +
    +

    + Contact Me +

    + +
    +
    ) } diff --git a/src/components/sections/Projects.jsx b/src/components/sections/Projects.jsx index eea903b..abbb87c 100644 --- a/src/components/sections/Projects.jsx +++ b/src/components/sections/Projects.jsx @@ -1,22 +1,109 @@ import RevealOnScroll from "../RevealOnScroll"; +import { VscArrowRight } from "react-icons/vsc"; + function Projects() { + const projects = [ + { + "name": "Portfolio", + "tech": [ + "Node.Js", + "React", + "Vite", + "Tailwind CSS", + "Docker", + ], + "description": "This is the link to the gitlab repository of the portfolio you are currently viewing!", + "visibility": "Public", + "link": "https://gitlab.plocserv.fr/ploc300/portfolio_v2", + }, + { + "name": "Challenges for Cyber club Angel", + "tech": [ + "Python", + "Bash", + "Docker", + "C/C++", + ], + "description": "This project contain most of the challenges I made (not the few firsts) for the Cyber club of the Lannion IUT. Sadly I cannot let this repository in public or else my flags will be everywhere, but if you really want to see them you can still request access by contacting me!", + "visibility": "Private", + "link": "https://gitlab.plocserv.fr/club_cyber_angel/challenges", + }, + { + "name": "Root-Me", + "tech": [ + "Python", + "C/C++", + ], + "description": "This project contain some of my latest solve on the Root-Me platform. All the solves inside this project have been automated with script (mostly in Python) so I can reuse them later when doing other challenges. This repository is Private and no access will be granted to it as it is againts root-me policy.", + "visibility": "Private", + "link": "https://gitlab.plocserv.fr/ploc300/root-me", + }, + { + "name": "Check Image Up-to-date", + "tech": [ + "Python", + ], + "description": "This python script allows me to check if my stacks (docker-compose on Portainer) are Up-to-date. This script is run every morning inside my Jenkins and send me an email with the result. The repo is in private, but I can send you the script if you want, again just conatct me!", + "visibility": "Private", + "link": "https://gitlab.plocserv.fr/plocserv/check_images_up_to_date", + }, + { + "name": "Pylint Disable Analyser", + "tech": [ + "Python", + ], + "description": "This cli tool has been wrote during my Intership at Nokia. It allow to run a single python script and analyse every python file in the sub-directories. After running a CSV report is generated with a global summary of all the pylint disable found as well as a report file by file. This project is Private and cannot be shared since it's a internal tool.", + "visibility": "Private", + "link": "https://github.com/Ploc300/PylintDisableAnalyser", + }, + { + "name": "RTPhone", + "tech": [ + "Python", + "Tkinter", + ], + "description": "This is a group school project, the objective was to create a Softphone (like MS Teams, Discords, etc...). I realised most of the Server and my 2 teammates have focused the client. The final project was a bit buggy, but the main objectives, make a phone call, make a conference call, \"secure connection\" with token, user management and phone number change without conflict were working. I also added a complete GUI for the server using tkinter. The server code is not really great since I wasn't using Pylint for my projects at this time. This project is Public but unmaintained.", + "visibility": "Private", + "link": "https://github.com/Ploc300/RTPhone", + }, + { + "name": "Projet Cyber", + "tech": [ + "Mestasploit", + "Debian", + ], + "description": "This is the report for a school project. The project was too make a security audit on a machine (Basic Pentesting 1 on VulnHub). This was a really fun project too make as it helped me learning how to do a penetration test as well a writting a report for it. This repo is private, since this project is still made by new students, therefore you can request access if you want to read it!", + "visibility": "Private", + "link": "https://github.com/Ploc300/ProjetCyber", + }, + ] + + return (

    Featured Projects

    -
    -

    RTPhone

    -

    - Description... -

    -
    - View Project + {projects.map((project, key) => ( +
    +

    {project.name}

    +
    Tech used: +
      + {project.tech.map((tech, key) => ( +
    • {tech}
    • + ))} +
    +
    +

    + {project.description} +

    + + View Project ({project.visibility}) +
    -
    - + ))}