├── UI.png
├── src
├── assets
│ ├── p3.png
│ ├── p4.png
│ ├── p5.png
│ ├── p6.png
│ ├── fonts
│ │ └── impact.ttf
│ ├── icons
│ │ ├── java.svg
│ │ ├── chatgptapi.svg
│ │ ├── vercel.svg
│ │ ├── flutter.svg
│ │ ├── css.svg
│ │ ├── html.svg
│ │ ├── firebase.svg
│ │ ├── fcm.svg
│ │ ├── googlebooksapi.svg
│ │ ├── dart.svg
│ │ ├── stripe.svg
│ │ ├── tailwindcss.svg
│ │ ├── unity.svg
│ │ ├── cs.svg
│ │ ├── bootstrap.svg
│ │ ├── phpmyadmin.svg
│ │ ├── js.svg
│ │ ├── figma.svg
│ │ ├── php.svg
│ │ ├── blender.svg
│ │ ├── typescript.svg
│ │ ├── redux.svg
│ │ ├── python.svg
│ │ ├── mui.svg
│ │ ├── nodejs.svg
│ │ ├── adobexd.svg
│ │ ├── bash.svg
│ │ ├── xampp.svg
│ │ ├── react.svg
│ │ ├── androidstd.svg
│ │ ├── snyk.svg
│ │ ├── mysql.svg
│ │ └── linux.svg
│ ├── logo.svg
│ ├── blob.svg
│ └── mozn.svg
├── index.js
├── index.css
├── App.js
├── components
│ ├── ui
│ │ ├── SkillCard.jsx
│ │ ├── MiniProjectCard.jsx
│ │ ├── ExperienceCard.jsx
│ │ └── ProjectCard.jsx
│ ├── Skills.jsx
│ ├── Experience.jsx
│ ├── Footer.jsx
│ ├── Hero.jsx
│ ├── Navbar.jsx
│ └── Projects.jsx
└── data.js
├── public
├── favicon.ico
├── robots.txt
└── index.html
├── .gitignore
├── tailwind.config.js
├── LICENSE
├── package.json
└── README.md
/UI.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/UI.png
--------------------------------------------------------------------------------
/src/assets/p3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/src/assets/p3.png
--------------------------------------------------------------------------------
/src/assets/p4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/src/assets/p4.png
--------------------------------------------------------------------------------
/src/assets/p5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/src/assets/p5.png
--------------------------------------------------------------------------------
/src/assets/p6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/src/assets/p6.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/public/favicon.ico
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/src/assets/fonts/impact.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Yomna-J/Portfolio/HEAD/src/assets/fonts/impact.ttf
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom/client";
3 | import "./index.css";
4 | import App from "./App";
5 |
6 | const root = ReactDOM.createRoot(document.getElementById("root"));
7 | root.render(
8 |
9 |
10 |
11 | );
12 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/src/index.css:
--------------------------------------------------------------------------------
1 | @tailwind base;
2 | @tailwind components;
3 | @tailwind utilities;
4 | @import url("https://fonts.googleapis.com/css2?family=Anton&family=Inconsolata:wght@900&display=swap");
5 | @import url("https://fonts.googleapis.com/css2?family=Anton&display=swap");
6 | @font-face {
7 | font-family: "impact";
8 | src: local("impact"), url(./assets/fonts/impact.ttf) format("ttf");
9 | }
10 | html {
11 | scroll-behavior: smooth;
12 | }
13 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: ["./src/**/*.{js,jsx,ts,tsx}"],
4 | theme: {
5 | fontFamily: {
6 | Inconsolata: ["Inconsolata", "sans-serif"],
7 | impact: ["impact", "sans-serif"],
8 | },
9 | colors: {
10 | transparent: "transparent",
11 | current: "currentColor",
12 | white: "#ffffff",
13 | primary: "#AD00FF",
14 | darkPrimary: "#6A36A5",
15 | secondary: "#F8EDFF",
16 | darkGray: "#161130",
17 | lightGray: "#262624",
18 | },
19 | },
20 | plugins: [],
21 | };
22 |
--------------------------------------------------------------------------------
/src/App.js:
--------------------------------------------------------------------------------
1 | import Hero from "./components/Hero";
2 | import Navbar from "./components/Navbar";
3 | import Experience from "./components/Experience";
4 | import Skills from "./components/Skills";
5 | import Projects from "./components/Projects";
6 | import Footer from "./components/Footer";
7 | import { BrowserRouter } from "react-router-dom";
8 | import { Analytics } from '@vercel/analytics/react';
9 |
10 | function App() {
11 | return (
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | );
24 | }
25 |
26 | export default App;
27 |
--------------------------------------------------------------------------------
/src/assets/icons/java.svg:
--------------------------------------------------------------------------------
1 | Java Java Java
--------------------------------------------------------------------------------
/src/components/ui/SkillCard.jsx:
--------------------------------------------------------------------------------
1 | const SkillCard = ({ title, tools, children }) => {
2 | return (
3 |
8 | {children}
9 |
{title}
10 | {/*
*/}
17 | {/* ICON */}
18 |
19 | {tools.map((tool) => {
20 | return
;
21 | })}
22 |
23 |
24 | );
25 | };
26 |
27 | export default SkillCard;
28 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 |
14 |
15 |
16 |
17 | Youmna Jaza
18 |
19 |
20 |
21 |
22 |
23 |
24 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/assets/icons/chatgptapi.svg:
--------------------------------------------------------------------------------
1 | ChatGPT API ChatGPT API ChatGPT API
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 Youmna Jaza
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/assets/icons/vercel.svg:
--------------------------------------------------------------------------------
1 | Vercel Vercel Vercel
--------------------------------------------------------------------------------
/src/assets/icons/flutter.svg:
--------------------------------------------------------------------------------
1 | Flutter Flutter Flutter
--------------------------------------------------------------------------------
/src/components/ui/MiniProjectCard.jsx:
--------------------------------------------------------------------------------
1 | import { HiLink } from "react-icons/hi2";
2 | import { GoMarkGithub } from "react-icons/go";
3 |
4 | const MiniProjectCard = ({
5 | picture,
6 | github,
7 | website,
8 | title,
9 | description,
10 | children,
11 | }) => {
12 | return (
13 |
18 |
19 |
20 |
21 |
22 |
{title}
23 |
{description}
24 |
{children}
25 |
26 |
41 |
42 | );
43 | };
44 |
45 | export default MiniProjectCard;
46 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "portfolio",
3 | "version": "0.1.0",
4 | "private": true,
5 | "dependencies": {
6 | "@testing-library/jest-dom": "^5.16.5",
7 | "@testing-library/react": "^13.4.0",
8 | "@testing-library/user-event": "^13.5.0",
9 | "@vercel/analytics": "^1.0.2",
10 | "aos": "^3.0.0-beta.6",
11 | "react": "^18.2.0",
12 | "react-dom": "^18.2.0",
13 | "react-icons": "^4.7.1",
14 | "react-router-dom": "^6.8.0",
15 | "react-router-hash-link": "^2.4.3",
16 | "react-scripts": "5.0.1",
17 | "react-typing-effect": "^2.0.5",
18 | "web-vitals": "^2.1.4"
19 | },
20 | "scripts": {
21 | "start": "react-scripts start",
22 | "build": "react-scripts build",
23 | "test": "react-scripts test",
24 | "eject": "react-scripts eject"
25 | },
26 | "eslintConfig": {
27 | "extends": [
28 | "react-app",
29 | "react-app/jest"
30 | ]
31 | },
32 | "browserslist": {
33 | "production": [
34 | ">0.2%",
35 | "not dead",
36 | "not op_mini all"
37 | ],
38 | "development": [
39 | "last 1 chrome version",
40 | "last 1 firefox version",
41 | "last 1 safari version"
42 | ]
43 | },
44 | "devDependencies": {
45 | "prettier": "^2.8.3",
46 | "prettier-plugin-tailwindcss": "^0.2.2",
47 | "tailwindcss": "^3.2.4"
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/src/components/Skills.jsx:
--------------------------------------------------------------------------------
1 | import data from "../data";
2 | import { HiOutlineDocument } from "react-icons/hi";
3 | import { BiCodeAlt } from "react-icons/bi";
4 | import { BiPaint } from "react-icons/bi";
5 | import { FiTool } from "react-icons/fi";
6 | import SkillCard from "./ui/SkillCard";
7 |
8 | const Skills = () => {
9 | return (
10 |
14 |
15 | Skills
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 | );
33 | };
34 |
35 | export default Skills;
36 |
--------------------------------------------------------------------------------
/src/assets/icons/css.svg:
--------------------------------------------------------------------------------
1 | CSS3 CSS3 CSS3
--------------------------------------------------------------------------------
/src/assets/icons/html.svg:
--------------------------------------------------------------------------------
1 | HTML5 HTML5 HTML5
--------------------------------------------------------------------------------
/src/assets/icons/firebase.svg:
--------------------------------------------------------------------------------
1 | Firebase Firebase Firebase
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
My Portfolio
8 |
9 | View Website
10 |
11 |
12 |
13 | [](https://github.com/Yomna-J/Portfolio/deployments/activity_log?environment=Production)
14 |
15 |
16 |
17 | 
18 |
19 | The design is inspired by [Ontalex](https://www.figma.com/community/file/1176098420505083930).
20 |
21 | ## Tools Used
22 |
23 |
24 |
25 | ## Project Run
26 | 1. Install dependencies
27 |
28 | ```sh
29 | npm install
30 | ```
31 | 2. Run on localserver
32 |
33 | ```sh
34 | npm start
35 | ```
36 | ## LICENSE
37 | This repository [UI design elements](https://www.figma.com/community/file/1176098420505083930) are licensed under CC-BY-4.0 and the code is licensed under the MIT License. Please be sure to comply with the terms of both licenses.
38 |
--------------------------------------------------------------------------------
/src/assets/icons/fcm.svg:
--------------------------------------------------------------------------------
1 | Firebase Cloud Messaging Firebase Cloud Messaging Firebase Cloud Messaging
--------------------------------------------------------------------------------
/src/components/ui/ExperienceCard.jsx:
--------------------------------------------------------------------------------
1 | import { default as blob } from "../../assets/blob.svg";
2 |
3 | const ExperienceCard = ({ logo, name, job, duration, skills, bgColor }) => {
4 | return (
5 |
6 |
7 |
8 |
13 |
14 | {/*
15 |
16 |
17 |
18 |
19 |
20 |
21 |
*/}
22 |
23 |
28 |
{job}
29 |
{duration}
30 |
31 |
32 | {skills.map((skill, index) => {
33 | return {skill} ;
34 | })}
35 |
36 |
37 |
38 | );
39 | };
40 |
41 | export default ExperienceCard;
42 |
--------------------------------------------------------------------------------
/src/assets/icons/googlebooksapi.svg:
--------------------------------------------------------------------------------
1 | Google Books API Google Books API Google Books API
--------------------------------------------------------------------------------
/src/assets/icons/dart.svg:
--------------------------------------------------------------------------------
1 | Dart Dart Dart
--------------------------------------------------------------------------------
/src/components/Experience.jsx:
--------------------------------------------------------------------------------
1 | import ExperienceCard from "./ui/ExperienceCard";
2 | import { default as moznLogo } from "../assets/mozn.svg";
3 |
4 | const Experience = () => {
5 | var mozn = [
6 | "Collaborated with the development team to ensure secure software development practices.",
7 | "Developed and maintained secure coding standards and guidelines.",
8 | "Integrated security into CI/CD pipelines for enhanced software security.",
9 | "Conducted static security testing, promptly addressing vulnerabilities.",
10 | "Contributed to ISO27001 and SAMA cybersecurity policies, emphasizing secure software practices.",
11 | "Managed cybersecurity awareness and ensured third-party security compliance.",
12 | ];
13 |
14 | var yu = [`Bachelor of science in Software Engineering`, `CGPA of: 4.0/4.0`];
15 |
16 | return (
17 |
21 |
22 | Experience & Education
23 |
24 |
25 | {/* Experience Cards */}
26 |
33 |
40 |
41 | );
42 | };
43 |
44 | export default Experience;
45 |
--------------------------------------------------------------------------------
/src/assets/icons/stripe.svg:
--------------------------------------------------------------------------------
1 | Stripe Stripe Stripe
--------------------------------------------------------------------------------
/src/assets/icons/tailwindcss.svg:
--------------------------------------------------------------------------------
1 | Tailwind CSS Tailwind CSS Tailwind CSS
--------------------------------------------------------------------------------
/src/assets/icons/unity.svg:
--------------------------------------------------------------------------------
1 | Unity Unity Unity
--------------------------------------------------------------------------------
/src/components/ui/ProjectCard.jsx:
--------------------------------------------------------------------------------
1 | import { HiLink } from "react-icons/hi2";
2 | import { GoMarkGithub } from "react-icons/go";
3 |
4 | const ProjectCard = ({
5 | picture,
6 | github = null,
7 | website,
8 | title,
9 | subtitle,
10 | description,
11 | tools,
12 | isImageOnLeft = false,
13 | }) => {
14 | const orderClass = isImageOnLeft ? "" : "md:flex-row-reverse";
15 |
16 | return (
17 |
20 |
25 |
43 |
{title}
44 |
{subtitle}
45 |
{description}
46 |
47 | {tools.map((tool) => (
48 |
49 | ))}
50 |
51 |
52 |
59 |
60 | );
61 | };
62 |
63 | export default ProjectCard;
64 |
--------------------------------------------------------------------------------
/src/assets/icons/cs.svg:
--------------------------------------------------------------------------------
1 | C Sharp C Sharp C Sharp
--------------------------------------------------------------------------------
/src/assets/icons/bootstrap.svg:
--------------------------------------------------------------------------------
1 | Bootstrap Bootstrap Bootstrap
--------------------------------------------------------------------------------
/src/components/Footer.jsx:
--------------------------------------------------------------------------------
1 | import { HiMail } from "react-icons/hi";
2 | import { GoMarkGithub } from "react-icons/go";
3 | import { BsLinkedin } from "react-icons/bs";
4 |
5 | const Footer = () => {
6 | return (
7 |
60 | );
61 | };
62 |
63 | export default Footer;
64 |
--------------------------------------------------------------------------------
/src/assets/icons/phpmyadmin.svg:
--------------------------------------------------------------------------------
1 | phpMyAdmin phpMyAdmin phpMyAdmin
--------------------------------------------------------------------------------
/src/assets/icons/js.svg:
--------------------------------------------------------------------------------
1 | JavaScript JavaScript JavaScript
--------------------------------------------------------------------------------
/src/assets/icons/figma.svg:
--------------------------------------------------------------------------------
1 | Figma Figma Figma
--------------------------------------------------------------------------------
/src/assets/icons/php.svg:
--------------------------------------------------------------------------------
1 | PHP PHP PHP
--------------------------------------------------------------------------------
/src/assets/icons/blender.svg:
--------------------------------------------------------------------------------
1 | Blender Blender Blender
--------------------------------------------------------------------------------
/src/assets/icons/typescript.svg:
--------------------------------------------------------------------------------
1 | TypeScript TypeScript TypeScript
--------------------------------------------------------------------------------
/src/assets/icons/redux.svg:
--------------------------------------------------------------------------------
1 | Redux Redux Redux
--------------------------------------------------------------------------------
/src/assets/icons/python.svg:
--------------------------------------------------------------------------------
1 | Python Python Python
--------------------------------------------------------------------------------
/src/assets/icons/mui.svg:
--------------------------------------------------------------------------------
1 | MUI MUI MUI
--------------------------------------------------------------------------------
/src/assets/icons/nodejs.svg:
--------------------------------------------------------------------------------
1 | Node.js Node.js Node.js
--------------------------------------------------------------------------------
/src/components/Hero.jsx:
--------------------------------------------------------------------------------
1 | import { default as blob } from "../assets/blob.svg";
2 | import ReactTypingEffect from "react-typing-effect";
3 | import { GoMarkGithub } from "react-icons/go";
4 | import { BsLinkedin } from "react-icons/bs";
5 |
6 | const Hero = () => {
7 | var code = `let button_menu = document.querySelector(".header_button");
8 | let float_menu = document.querySelector(".header_menu--float");
9 | let line_top = document.querySelector(".header_button_line--top");
10 | let line_under = document.querySelector(".header_button_line--bottom");
11 |
12 | button_menu.isSelected = false;
13 |
14 | function addEffectWriting(element, time) {
15 | let element_array = element.innerText.split("");
16 |
17 | element.count = 0;
18 | element.innerText = "";
19 |
20 | function writeSymbols() {
21 | element.innerText += element_array[element.count];
22 | element.count++;
23 |
24 | if (element.count <= element_array.length) {
25 | setTimeout(() => {
26 | writeSymbols();
27 | }, time);
28 | } else if (element.count >= element_array.length) {
29 | element.count = 0;
30 | element.innerText = "";
31 |
32 | writeSymbols();
33 | }
34 | }
35 | writeSymbols();
36 | }
37 | `;
38 | return (
39 |
43 |
44 |
45 | Y
46 |
47 |
54 |
Software Engineer
55 |
56 | I'm a software engineering fresh graduate and a cybersecurity analyst
57 | with a passion for front-end development, mobile applications, and
58 | UI/UX design. I strive to create user-friendly and visually appealing
59 | software.
60 |
61 |
75 |
76 |
77 |
78 | {code}
79 |
84 |
85 |
86 |
87 | );
88 | };
89 |
90 | export default Hero;
91 |
--------------------------------------------------------------------------------
/src/assets/icons/adobexd.svg:
--------------------------------------------------------------------------------
1 | Adobe XD Adobe XD Adobe XD
--------------------------------------------------------------------------------
/src/assets/icons/bash.svg:
--------------------------------------------------------------------------------
1 | Bash Bash Bash
--------------------------------------------------------------------------------
/src/assets/icons/xampp.svg:
--------------------------------------------------------------------------------
1 | Xampp Xampp Xampp
--------------------------------------------------------------------------------
/src/components/Navbar.jsx:
--------------------------------------------------------------------------------
1 | import { useState } from "react";
2 | import { HashLink as Link } from "react-router-hash-link";
3 |
4 | const Navbar = () => {
5 | const [navbar, setNavbar] = useState(false);
6 |
7 | return (
8 | // CODE BELOW: https://larainfo.com/blogs/react-responsive-navbar-menu-with-tailwind-css-example
9 |
10 |
11 |
57 |
58 |
63 |
64 |
65 |
69 | About
70 |
71 |
72 |
73 |
77 | Experience & Education
78 |
79 |
80 |
81 |
85 | Skills
86 |
87 |
88 |
89 |
93 | Projects
94 |
95 |
96 |
97 |
101 | Contact
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | );
110 | };
111 | export default Navbar;
112 |
--------------------------------------------------------------------------------
/src/assets/icons/react.svg:
--------------------------------------------------------------------------------
1 | React Js React Js React Js
--------------------------------------------------------------------------------
/src/assets/icons/androidstd.svg:
--------------------------------------------------------------------------------
1 | Android Studio Android Studio Android Studio
--------------------------------------------------------------------------------
/src/assets/logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/src/assets/icons/snyk.svg:
--------------------------------------------------------------------------------
1 | Snyk Snyk Snyk
--------------------------------------------------------------------------------
/src/components/Projects.jsx:
--------------------------------------------------------------------------------
1 | import { default as Hurairah } from "../assets/hurairah.svg";
2 | import p4 from "../assets/p4.png";
3 | import p3 from "../assets/p3.png";
4 | import p5 from "../assets/p5.png";
5 | import p6 from "../assets/p6.png";
6 | import MiniProjectCard from "./ui/MiniProjectCard";
7 | import { default as blob } from "../assets/blob.svg";
8 | import data from "../data";
9 | import ProjectCard from "./ui/ProjectCard";
10 |
11 | const Projects = () => {
12 | return (
13 |
17 |
18 | Projects
19 |
20 | {/* RECENT PROJECTS */}
21 |
30 |
40 |
48 |
56 | {/* OTHER PROJECTS */}
57 |
58 | {/* PROJECT CARD */}
59 |
66 | {data.card1.map((tool) => {
67 | return ;
68 | })}
69 |
70 |
76 | {data.card2.map((tool) => {
77 | return ;
78 | })}
79 |
80 |
87 | {data.card3.map((tool) => {
88 | return ;
89 | })}
90 |
91 |
97 | {data.card4.map((tool) => {
98 | return ;
99 | })}
100 |
101 |
102 |
103 |
104 | );
105 | };
106 |
107 | export default Projects;
108 |
--------------------------------------------------------------------------------
/src/assets/icons/mysql.svg:
--------------------------------------------------------------------------------
1 | MySQL MySQL MySQL
--------------------------------------------------------------------------------
/src/data.js:
--------------------------------------------------------------------------------
1 | import { default as java } from "./assets/icons/java.svg";
2 | import { default as python } from "./assets/icons/python.svg";
3 | import { default as js } from "./assets/icons/js.svg";
4 | import { default as html } from "./assets/icons/html.svg";
5 | import { default as css } from "./assets/icons/css.svg";
6 | import { default as dart } from "./assets/icons/dart.svg";
7 | import { default as cs } from "./assets/icons/cs.svg";
8 | import { default as php } from "./assets/icons/php.svg";
9 | import { default as flutter } from "./assets/icons/flutter.svg";
10 | import { default as react } from "./assets/icons/react.svg";
11 | import { default as redux } from "./assets/icons/redux.svg";
12 | import { default as mui } from "./assets/icons/mui.svg";
13 | import { default as bootstrap } from "./assets/icons/bootstrap.svg";
14 | import { default as blender } from "./assets/icons/blender.svg";
15 | import { default as adobexd } from "./assets/icons/adobexd.svg";
16 | import { default as figma } from "./assets/icons/figma.svg";
17 | import { default as fcm } from "./assets/icons/fcm.svg";
18 | import { default as bash } from "./assets/icons/bash.svg";
19 | import { default as mysql } from "./assets/icons/mysql.svg";
20 | import { default as phpmyadmin } from "./assets/icons/phpmyadmin.svg";
21 | import { default as snyk } from "./assets/icons/snyk.svg";
22 | import { default as linux } from "./assets/icons/linux.svg";
23 | import { default as unity } from "./assets/icons/unity.svg";
24 | import { default as androidstd } from "./assets/icons/androidstd.svg";
25 | import { default as vercel } from "./assets/icons/vercel.svg";
26 | import { default as xampp } from "./assets/icons/xampp.svg";
27 | import { default as tailwindcss } from "./assets/icons/tailwindcss.svg";
28 | import { default as typescript } from "./assets/icons/typescript.svg";
29 | import { default as nodejs } from "./assets/icons/nodejs.svg";
30 | import { default as googlebooksapi } from "./assets/icons/googlebooksapi.svg";
31 | import { default as firebase } from "./assets/icons/firebase.svg";
32 | import { default as stripe } from "./assets/icons/stripe.svg";
33 | import { default as chatgptapi } from "./assets/icons/chatgptapi.svg";
34 |
35 | const data = {
36 | languages: [
37 | { id: 1, alt: "Java", img: java },
38 | { id: 2, alt: "Python", img: python },
39 | { id: 3, alt: "JavaScript", img: js },
40 | { id: 28, alt: "TypeScript", img: typescript },
41 | { id: 4, alt: "HTML5", img: html },
42 | { id: 5, alt: "CSS3", img: css },
43 | { id: 6, alt: "Dart", img: dart },
44 | { id: 7, alt: "C Sharp", img: cs },
45 | { id: 8, alt: "PHP", img: php },
46 | ],
47 | lib: [
48 | { id: 9, alt: "Flutter", img: flutter },
49 | { id: 10, alt: "React JS", img: react },
50 | { id: 11, alt: "Redux", img: redux },
51 | { id: 29, alt: "Tailwind CSS", img: tailwindcss },
52 | { id: 30, alt: "Node.js", img: nodejs },
53 | { id: 12, alt: "MUI", img: mui },
54 | { id: 13, alt: "Bootstrap", img: bootstrap },
55 | ],
56 | design: [
57 | { id: 14, alt: "Blender", img: blender },
58 | { id: 15, alt: "Adobe XD", img: adobexd },
59 | { id: 16, alt: "Figma", img: figma },
60 | ],
61 | tools: [
62 | { id: 17, alt: "Firebase Cloud Messaging", img: fcm },
63 | { id: 31, alt: "Firebase", img: firebase },
64 | { id: 18, alt: "Bash", img: bash },
65 | { id: 19, alt: "MySQL", img: mysql },
66 | { id: 20, alt: "phpMyAdmin", img: phpmyadmin },
67 | { id: 21, alt: "Snyk", img: snyk },
68 | { id: 22, alt: "Linux", img: linux },
69 | { id: 23, alt: "Unity", img: unity },
70 | { id: 24, alt: "Android Studio", img: androidstd },
71 | { id: 26, alt: "Vercel", img: vercel },
72 | { id: 27, alt: "Xampp", img: xampp },
73 | ],
74 | project1: [
75 | { id: 9, alt: "Flutter", img: flutter },
76 | { id: 6, alt: "Dart", img: dart },
77 | { id: 8, alt: "PHP", img: php },
78 | { id: 27, alt: "Xampp", img: xampp },
79 | { id: 20, alt: "phpMyAdmin", img: phpmyadmin },
80 | { id: 17, alt: "Firebase Cloud Messaging", img: fcm },
81 | { id: 24, alt: "Android Studio", img: androidstd },
82 | { id: 19, alt: "MySQL", img: mysql },
83 | { id: 15, alt: "Adobe XD", img: adobexd },
84 | ],
85 | project2: [
86 | { id: 10, alt: "React JS", img: react },
87 | { id: 12, alt: "MUI", img: mui },
88 | { id: 16, alt: "Figma", img: figma },
89 | { id: 26, alt: "Vercel", img: vercel },
90 | ], //bookish
91 | project3: [
92 | { id: 10, alt: "React JS", img: react },
93 | { id: 29, alt: "Tailwind CSS", img: tailwindcss },
94 | { id: 28, alt: "TypeScript", img: typescript },
95 | { id: 30, alt: "Node.js", img: nodejs },
96 | { id: 32, alt: "Google Books API", img: googlebooksapi },
97 | { id: 31, alt: "Firebase", img: firebase },
98 | { id: 33, alt: "Stripe", img: stripe },
99 | { id: 16, alt: "Figma", img: figma },
100 | { id: 26, alt: "Vercel", img: vercel },
101 | ], //landgpt
102 | project4: [
103 | { id: 10, alt: "React JS", img: react },
104 | { id: 29, alt: "Tailwind CSS", img: tailwindcss },
105 | { id: 30, alt: "Node.js", img: nodejs },
106 | { id: 34, alt: "ChatGPT API", img: chatgptapi },
107 | ],
108 | card1: [
109 | { id: 9, alt: "Flutter", img: flutter },
110 | { id: 6, alt: "Dart", img: dart },
111 | ],
112 | card2: [
113 | { id: 9, alt: "Flutter", img: flutter },
114 | { id: 6, alt: "Dart", img: dart },
115 | ],
116 | card3: [
117 | { id: 3, alt: "JavaScript", img: js },
118 | { id: 4, alt: "HTML5", img: html },
119 | { id: 13, alt: "Bootstrap", img: bootstrap },
120 | ],
121 | card4: [
122 | { id: 3, alt: "JavaScript", img: js },
123 | { id: 8, alt: "PHP", img: php },
124 | { id: 4, alt: "HTML5", img: html },
125 | { id: 19, alt: "MySQL", img: mysql },
126 | { id: 13, alt: "Bootstrap", img: bootstrap },
127 | ],
128 | };
129 |
130 | export default data;
131 |
--------------------------------------------------------------------------------
/src/assets/blob.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/assets/icons/linux.svg:
--------------------------------------------------------------------------------
1 | Linux Linux Linux
--------------------------------------------------------------------------------
/src/assets/mozn.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------