Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 83390d802a | |||
| cab338c2b3 | |||
| d34eb5714f | |||
| 23233d4be6 | |||
| b9b349b706 | |||
| 287329e2c5 | |||
| ed05bee64d | |||
| 7708889e28 | |||
| 425b96e9c6 |
@@ -2,7 +2,7 @@
|
|||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<link rel="icon" type="image/svg+xml" href="/public/assets/images/logo.svg" />
|
<link rel="icon" type="image/svg+xml" href="/assets/images/logo.svg" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
|||||||
@@ -7,12 +7,26 @@
|
|||||||
width="1822"
|
width="1822"
|
||||||
height="2051"
|
height="2051"
|
||||||
viewBox="0 0 1822 2051"
|
viewBox="0 0 1822 2051"
|
||||||
|
sodipodi:docname="C++.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="1822"
|
width="1822"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 157 KiB After Width: | Height: | Size: 157 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="1200"
|
width="1200"
|
||||||
height="1200"
|
height="1200"
|
||||||
viewBox="0 0 1200 1200"
|
viewBox="0 0 1200 1200"
|
||||||
|
sodipodi:docname="CSS.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="1200"
|
width="1200"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="2048"
|
width="2048"
|
||||||
height="2048"
|
height="2048"
|
||||||
viewBox="0 0 2048 2048"
|
viewBox="0 0 2048 2048"
|
||||||
|
sodipodi:docname="Git.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="2048"
|
width="2048"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="169"
|
width="169"
|
||||||
height="169"
|
height="169"
|
||||||
viewBox="0 0 169 169"
|
viewBox="0 0 169 169"
|
||||||
|
sodipodi:docname="image-removebg-preview.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="169"
|
width="169"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="973"
|
width="973"
|
||||||
height="973"
|
height="973"
|
||||||
viewBox="0 0 973 973"
|
viewBox="0 0 973 973"
|
||||||
|
sodipodi:docname="JavaScript.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="973"
|
width="973"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 19 KiB |
|
After Width: | Height: | Size: 173 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="2560"
|
width="2560"
|
||||||
height="1381"
|
height="1381"
|
||||||
viewBox="0 0 2560 1381"
|
viewBox="0 0 2560 1381"
|
||||||
|
sodipodi:docname="PHP.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="2560"
|
width="2560"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 246 KiB After Width: | Height: | Size: 247 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="110"
|
width="110"
|
||||||
height="110"
|
height="110"
|
||||||
viewBox="0 0 110 110"
|
viewBox="0 0 110 110"
|
||||||
|
sodipodi:docname="Pyhton.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="110"
|
width="110"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 109 KiB |
@@ -7,12 +7,26 @@
|
|||||||
width="301"
|
width="301"
|
||||||
height="299"
|
height="299"
|
||||||
viewBox="0 0 301 299"
|
viewBox="0 0 301 299"
|
||||||
|
sodipodi:docname="SQL.png"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
xmlns:svg="http://www.w3.org/2000/svg">
|
||||||
<defs
|
<defs
|
||||||
id="defs1" />
|
id="defs1" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="namedview1"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#000000"
|
||||||
|
borderopacity="0.25"
|
||||||
|
inkscape:showpageshadow="2"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pagecheckerboard="0"
|
||||||
|
inkscape:deskcolor="#d1d1d1" />
|
||||||
<g
|
<g
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="Image"
|
||||||
id="g1">
|
id="g1">
|
||||||
<image
|
<image
|
||||||
width="301"
|
width="301"
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 57 KiB |
@@ -1,8 +1,8 @@
|
|||||||
import './App.css'
|
import './App.css'
|
||||||
import { Routes, Route, Link } from 'react-router-dom';
|
import { Routes, Route } from 'react-router-dom';
|
||||||
import HomePage from './pages/HomePage.jsx';
|
import HomePage from './pages/Home/HomePage.jsx';
|
||||||
import ProjectsPage from './pages/ProjectsPage';
|
import ProjectsPage from './pages/Projects/ProjectsPage.jsx';
|
||||||
import ProjectDetailsPage from "./pages/ProjectDetailsPage.jsx";
|
import ProjectDetailsPage from "./pages/ProjectDetails/ProjectDetailsPage.jsx";
|
||||||
|
|
||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import "./Projects.css"
|
|||||||
import React, {useEffect, useState} from "react";
|
import React, {useEffect, useState} from "react";
|
||||||
import {Link, useLocation} from "react-router-dom";
|
import {Link, useLocation} from "react-router-dom";
|
||||||
import NavBar from "../NavBar/NavBar.jsx";
|
import NavBar from "../NavBar/NavBar.jsx";
|
||||||
import Filter from "../Filter/Filter.jsx";
|
import Filter from "../../pages/Projects/components/Filter/Filter.jsx";
|
||||||
|
|
||||||
function Projects() {
|
function Projects() {
|
||||||
const [projects, setProjects] = useState([]);
|
const [projects, setProjects] = useState([]);
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
|
|
||||||
html{
|
html{
|
||||||
scroll-behavior: smooth;
|
scroll-behavior: smooth;
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -17,7 +16,6 @@ body {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
place-items: center;
|
place-items: center;
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.section-title {
|
.section-title {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import {useEffect, useState} from 'react'; // 1. Import useEffect
|
import {useEffect} from 'react';
|
||||||
import { useLocation } from 'react-router-dom'; // 2. Import useLocation
|
import { useLocation } from 'react-router-dom';
|
||||||
import Home from '../components/Home/Home.jsx';
|
import Home from './components/Home/Home.jsx';
|
||||||
import Experiences from '../components/Experiences/Experiences.jsx';
|
import Experiences from './components/Experiences/Experiences.jsx';
|
||||||
import Projects from '../components/Projects/Projects.jsx';
|
import Projects from '../../components/Projects/Projects.jsx';
|
||||||
import Skills from '../components/Skills/Skills.jsx';
|
import Skills from './components/Skills/Skills.jsx';
|
||||||
import Footer from '../components/Footer/Footer.jsx';
|
import Footer from '../../components/Footer/Footer.jsx';
|
||||||
|
|
||||||
function HomePage() {
|
function HomePage() {
|
||||||
const location = useLocation();
|
const location = useLocation();
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import './Home.css';
|
import './Home.css';
|
||||||
import Background from "../thirdParty/Background/Background.jsx";
|
import Background from "../../../../components/thirdParty/Background/Background.jsx";
|
||||||
import NavBar from "../NavBar/NavBar.jsx";
|
import NavBar from "../../../../components/NavBar/NavBar.jsx";
|
||||||
function Home() {
|
function Home() {
|
||||||
return (
|
return (
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import React, { useState, useEffect } from 'react';
|
import React, { useState, useEffect } from 'react';
|
||||||
import SkillCard from "../SkillCard/SkillCard.jsx";
|
import SkillCard from "../../../../components/SkillCard/SkillCard.jsx";
|
||||||
import "./Skills.css";
|
import "./Skills.css";
|
||||||
|
|
||||||
function Skills() {
|
function Skills() {
|
||||||
@@ -1,8 +1,7 @@
|
|||||||
import { useParams } from "react-router-dom";
|
import { useParams } from "react-router-dom";
|
||||||
import React, { useEffect, useState } from "react";
|
import React, { useEffect, useState } from "react";
|
||||||
import NavBar from "../components/NavBar/NavBar.jsx";
|
import ProjectDetails from "./components/ProjectDetails/ProjectDetails.jsx";
|
||||||
import ProjectDetails from "../components/ProjectDetails/ProjectDetails.jsx";
|
import Footer from "../../components/Footer/Footer.jsx";
|
||||||
import Footer from "../components/Footer/Footer.jsx";
|
|
||||||
|
|
||||||
function ProjectDetailsPage() {
|
function ProjectDetailsPage() {
|
||||||
const { id } = useParams();
|
const { id } = useParams();
|
||||||
@@ -183,5 +183,11 @@ aside ul li a:hover {
|
|||||||
.return-button {
|
.return-button {
|
||||||
top: 7em;
|
top: 7em;
|
||||||
}
|
}
|
||||||
|
aside {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.project-details-content{
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import "./ProjectDetails.css"
|
import "./ProjectDetails.css"
|
||||||
import SkillCard from "../SkillCard/SkillCard.jsx";
|
import SkillCard from "../../../../components/SkillCard/SkillCard.jsx";
|
||||||
import React, {useEffect, useState} from "react";
|
import React, {useEffect, useState} from "react";
|
||||||
import NavBar from "../NavBar/NavBar.jsx";
|
import NavBar from "../../../../components/NavBar/NavBar.jsx";
|
||||||
import ReactMarkdown from 'react-markdown';
|
import ReactMarkdown from 'react-markdown';
|
||||||
import remarkGfm from 'remark-gfm';
|
import remarkGfm from 'remark-gfm';
|
||||||
import {useNavigate} from "react-router-dom";
|
import {useNavigate} from "react-router-dom";
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import Projects from "../components/Projects/Projects.jsx";
|
import Projects from "../../components/Projects/Projects.jsx";
|
||||||
import Footer from "../components/Footer/Footer.jsx";
|
import Footer from "../../components/Footer/Footer.jsx";
|
||||||
|
|
||||||
function ProjectsPage() {
|
function ProjectsPage() {
|
||||||
return (
|
return (
|
||||||