diff --git a/Frontend/README.md b/Frontend/README.md index a643c7b..5dc893c 100644 --- a/Frontend/README.md +++ b/Frontend/README.md @@ -54,7 +54,7 @@ npm install framer-motion ## MUI npm install @mui/lab @types/material-ui npm install @mui/icons-material - +npm install react-swipeable-views diff --git a/Frontend/package.json b/Frontend/package.json index 332f302..b05879a 100644 --- a/Frontend/package.json +++ b/Frontend/package.json @@ -18,10 +18,14 @@ "@types/node": "^16.18.76", "@types/react": "^18.2.48", "@types/react-dom": "^18.2.18", + "@types/react-swipeable-views": "^0.13.5", "aos": "^2.3.4", "axios": "^1.6.7", "bootstrap": "^5.3.2", + "embla-carousel-react": "8.0.0-rc22", "framer-motion": "^11.0.3", + "lucide-react": "^0.321.0", + "pure-react-carousel": "^1.30.1", "react": "^18.2.0", "react-bootstrap": "^2.10.0", "react-dom": "^18.2.0", @@ -30,10 +34,15 @@ "react-router-hash-link": "^2.4.3", "react-scripts": "5.0.1", "react-slideshow-image": "^4.3.0", + "react-swipeable-views": "^0.14.0", + "react-swipeable-views-utils": "^0.14.0", + "react-tsparticles": "^2.12.2", "react-vertical-timeline-component": "^3.6.0", "sass": "^1.70.0", "styled-components": "^6.1.8", "sweetalert2": "^11.10.4", + "tsparticles-engine": "^2.12.0", + "tsparticles-slim": "^2.12.0", "typescript": "^4.9.5", "web-vitals": "^2.1.4" }, @@ -64,6 +73,7 @@ "devDependencies": { "@types/aria-query": "^5.0.4", "@types/react-router-hash-link": "^2.4.9", + "@types/react-swipeable-views-utils": "^0.13.7", "@types/react-vertical-timeline-component": "^3.3.6", "tailwindcss": "^3.4.1" } diff --git a/Frontend/pnpm-lock.yaml b/Frontend/pnpm-lock.yaml index 8bd251d..c9495c8 100644 --- a/Frontend/pnpm-lock.yaml +++ b/Frontend/pnpm-lock.yaml @@ -50,6 +50,9 @@ dependencies: '@types/react-dom': specifier: ^18.2.18 version: 18.2.18 + '@types/react-swipeable-views': + specifier: ^0.13.5 + version: 0.13.5 aos: specifier: ^2.3.4 version: 2.3.4 @@ -59,9 +62,18 @@ dependencies: bootstrap: specifier: ^5.3.2 version: 5.3.2(@popperjs/core@2.11.8) + embla-carousel-react: + specifier: 8.0.0-rc22 + version: 8.0.0-rc22(react@18.2.0) framer-motion: specifier: ^11.0.3 version: 11.0.3(react-dom@18.2.0)(react@18.2.0) + lucide-react: + specifier: ^0.321.0 + version: 0.321.0(react@18.2.0) + pure-react-carousel: + specifier: ^1.30.1 + version: 1.30.1(react-dom@18.2.0)(react@18.2.0) react: specifier: ^18.2.0 version: 18.2.0 @@ -86,6 +98,15 @@ dependencies: react-slideshow-image: specifier: ^4.3.0 version: 4.3.0(react@18.2.0) + react-swipeable-views: + specifier: ^0.14.0 + version: 0.14.0(react@18.2.0) + react-swipeable-views-utils: + specifier: ^0.14.0 + version: 0.14.0(react@18.2.0) + react-tsparticles: + specifier: ^2.12.2 + version: 2.12.2(react@18.2.0) react-vertical-timeline-component: specifier: ^3.6.0 version: 3.6.0(react@18.2.0) @@ -98,6 +119,12 @@ dependencies: sweetalert2: specifier: ^11.10.4 version: 11.10.4 + tsparticles-engine: + specifier: ^2.12.0 + version: 2.12.0 + tsparticles-slim: + specifier: ^2.12.0 + version: 2.12.0 typescript: specifier: ^4.9.5 version: 4.9.5 @@ -112,6 +139,9 @@ devDependencies: '@types/react-router-hash-link': specifier: ^2.4.9 version: 2.4.9 + '@types/react-swipeable-views-utils': + specifier: ^0.13.7 + version: 0.13.7 '@types/react-vertical-timeline-component': specifier: ^3.3.6 version: 3.3.6 @@ -1551,6 +1581,12 @@ packages: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: false + /@babel/runtime@7.0.0: + resolution: {integrity: sha512-7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA==} + dependencies: + regenerator-runtime: 0.12.1 + dev: false + /@babel/runtime@7.23.9: resolution: {integrity: sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==} engines: {node: '>=6.9.0'} @@ -2273,6 +2309,12 @@ packages: resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==} dev: false + /@material-ui/types@4.1.1: + resolution: {integrity: sha512-AN+GZNXytX9yxGi0JOfxHrRTbhFybjUJ05rnsBVjcB+16e466Z0Xe5IxawuOayVZgTBNDxmPKo5j4V6OnMtaSQ==} + dependencies: + '@types/react': 18.2.52 + dev: true + /@mui/base@5.0.0-beta.33(@types/react@18.2.52)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-WcSpoJUw/UYHXpvgtl4HyMar2Ar97illUpqiS/X1gtSBp6sdDW6kB2BJ9OlVQ+Kk/RL2GDp/WHA9sbjAYV35ow==} engines: {node: '>=12.0.0'} @@ -3159,6 +3201,19 @@ packages: '@types/react': 18.2.52 dev: true + /@types/react-swipeable-views-utils@0.13.7: + resolution: {integrity: sha512-ED8pf8dq3S79uWtP8EnSdrg7dUCrxyL9Uapq1dSA2mz+H83SjS8vsqmlFWmmBQoTuEHsQp5Ru9fxxsofQ+bI9Q==} + dependencies: + '@material-ui/types': 4.1.1 + '@types/react': 18.2.52 + '@types/react-swipeable-views': 0.13.5 + dev: true + + /@types/react-swipeable-views@0.13.5: + resolution: {integrity: sha512-ni6WjO7gBq2xB2Y/ZiRdQOgjGOxIik5ow2s7xKieDq8DxsXTdV46jJslSBVK2yoIJHf6mG3uqNTwxwgzbXRRzg==} + dependencies: + '@types/react': 18.2.52 + /@types/react-transition-group@4.4.10: resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==} dependencies: @@ -4878,10 +4933,19 @@ packages: which-typed-array: 1.1.14 dev: false + /deep-freeze@0.0.1: + resolution: {integrity: sha512-Z+z8HiAvsGwmjqlphnHW5oz6yWlOwu6EQfFTjmeTWlDeda3FS2yv3jhq35TX/ewmsnqB+RX2IdsIOyjJCQN5tg==} + dev: false + /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: false + /deepmerge@2.2.1: + resolution: {integrity: sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==} + engines: {node: '>=0.10.0'} + dev: false + /deepmerge@4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} @@ -5110,6 +5174,28 @@ packages: resolution: {integrity: sha512-9AQB5eFTHyR3Gvt2t/NwR0le2jBSUNwCnMbUCejFWHD+so4tH40/dRLgoE+jxlPeWS43XJewyvCv+I8LPMl49Q==} dev: false + /embla-carousel-react@8.0.0-rc22(react@18.2.0): + resolution: {integrity: sha512-NwmISV0Cw9XVo76Vquz3hJaeZe7qoCRtrzStxlEY7qfZD8WR/f4JlQAso35URTs1BeYVhcuClflelioo+Zmidg==} + peerDependencies: + react: ^16.8.0 || ^17.0.1 || ^18.0.0 + dependencies: + embla-carousel: 8.0.0-rc22 + embla-carousel-reactive-utils: 8.0.0-rc22(embla-carousel@8.0.0-rc22) + react: 18.2.0 + dev: false + + /embla-carousel-reactive-utils@8.0.0-rc22(embla-carousel@8.0.0-rc22): + resolution: {integrity: sha512-K4b8QhQGXYW5wr4l+U6XryhafsFV5c/IyohDnZN3MGoYIB9xY7qpjUWAcs5bTDjAD+qCZPOuXre0D3IVa28mqw==} + peerDependencies: + embla-carousel: 8.0.0-rc22 + dependencies: + embla-carousel: 8.0.0-rc22 + dev: false + + /embla-carousel@8.0.0-rc22: + resolution: {integrity: sha512-MeXnPT1LShfgAu8qXj3CskayV0R6OkHx7w3cPTx+Q5ZWKyShKpIuu7qVQJ5BoFegalE4n6yxqoQaRuGFbK9pYw==} + dev: false + /emittery@0.10.2: resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==} engines: {node: '>=12'} @@ -5148,6 +5234,12 @@ packages: resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} dev: false + /equals@1.0.5: + resolution: {integrity: sha512-wI15a6ZoaaXPv+55+Vh2Kqn3+efKRv8QPtcGTjW5xmanMnQzESdAt566jevtMZyt3W/jwLDTzXpMph5ECDJ2zg==} + dependencies: + jkroso-type: 1.1.1 + dev: false + /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: @@ -7405,6 +7497,10 @@ packages: resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} hasBin: true + /jkroso-type@1.1.1: + resolution: {integrity: sha512-zZgay+fPG6PgMUrpyFADmQmvLo39+AZa7Gc5pZhev2RhDxwANEq2etwD8d0e6rTg5NkwOIlQmaEmns3draC6Ng==} + dev: false + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} dev: false @@ -7545,6 +7641,10 @@ packages: object.values: 1.1.7 dev: false + /keycode@2.2.1: + resolution: {integrity: sha512-Rdgz9Hl9Iv4QKi8b0OlCRQEzp4AgVxyCtz5S/+VIHezDmrDhkp2N2TqBWOLz0/gbeREXOOiI9/4b8BY9uw2vFg==} + dev: false + /keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: @@ -7715,6 +7815,14 @@ packages: yallist: 4.0.0 dev: false + /lucide-react@0.321.0(react@18.2.0): + resolution: {integrity: sha512-Fi9VahIna6642U+2nAGSjnXwUBV3WyfFFPQq4yi3w30jtqxDLfSyiYCtCYCYQZ2KWNZc1MDI+rcsa0t+ChdYpw==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 + dependencies: + react: 18.2.0 + dev: false + /lz-string@1.5.0: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true @@ -9164,6 +9272,21 @@ packages: engines: {node: '>=6'} dev: false + /pure-react-carousel@1.30.1(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-B1qi62hZk0OFqRR4cTjtgIeOn/Ls5wo+HsLtrXT4jVf5et8ldBHSt+6LsYRJN86Or8dm+XbnJNEHy6WDJ0/DQw==} + peerDependencies: + react: 15.x || 16.x || 17.x || 18.x + react-dom: 15.x || 16.x || 17.x || 18.x + dependencies: + '@babel/runtime': 7.23.9 + deep-freeze: 0.0.1 + deepmerge: 2.2.1 + equals: 1.0.5 + prop-types: 15.8.1 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + /q@1.5.1: resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} engines: {node: '>=0.6.0', teleport: '>=0.2.0'} @@ -9305,6 +9428,17 @@ packages: resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==} dev: false + /react-event-listener@0.6.6(react@18.2.0): + resolution: {integrity: sha512-+hCNqfy7o9wvO6UgjqFmBzARJS7qrNoda0VqzvOuioEpoEXKutiKuv92dSz6kP7rYLmyHPyYNLesi5t/aH1gfw==} + peerDependencies: + react: ^16.3.0 + dependencies: + '@babel/runtime': 7.23.9 + prop-types: 15.8.1 + react: 18.2.0 + warning: 4.0.3 + dev: false + /react-hook-form@7.50.0(react@18.2.0): resolution: {integrity: sha512-AOhuzM3RdP09ZCnq+Z0yvKGHK25yiOX5phwxjV9L7U6HMla10ezkBnvQ+Pk4GTuDfsC5P2zza3k8mawFwFLVuQ==} engines: {node: '>=12.22.0'} @@ -9485,6 +9619,42 @@ packages: resize-observer-polyfill: 1.5.1 dev: false + /react-swipeable-views-core@0.14.0: + resolution: {integrity: sha512-0W/e9uPweNEOSPjmYtuKSC/SvKKg1sfo+WtPdnxeLF3t2L82h7jjszuOHz9C23fzkvLfdgkaOmcbAxE9w2GEjA==} + engines: {node: '>=6.0.0'} + dependencies: + '@babel/runtime': 7.0.0 + warning: 4.0.3 + dev: false + + /react-swipeable-views-utils@0.14.0(react@18.2.0): + resolution: {integrity: sha512-W+fXBOsDqgFK1/g7MzRMVcDurp3LqO3ksC8UgInh2P/tKgb5DusuuB1geKHFc6o1wKl+4oyER4Zh3Lxmr8xbXA==} + engines: {node: '>=6.0.0'} + dependencies: + '@babel/runtime': 7.0.0 + keycode: 2.2.1 + prop-types: 15.8.1 + react-event-listener: 0.6.6(react@18.2.0) + react-swipeable-views-core: 0.14.0 + shallow-equal: 1.2.1 + transitivePeerDependencies: + - react + dev: false + + /react-swipeable-views@0.14.0(react@18.2.0): + resolution: {integrity: sha512-wrTT6bi2nC3JbmyNAsPXffUXLn0DVT9SbbcFr36gKpbaCgEp7rX/OFxsu5hPc/NBsUhHyoSRGvwqJNNrWTwCww==} + engines: {node: '>=6.0.0'} + peerDependencies: + react: ^15.3.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@babel/runtime': 7.0.0 + prop-types: 15.8.1 + react: 18.2.0 + react-swipeable-views-core: 0.14.0 + react-swipeable-views-utils: 0.14.0(react@18.2.0) + warning: 4.0.3 + dev: false + /react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} peerDependencies: @@ -9499,6 +9669,17 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false + /react-tsparticles@2.12.2(react@18.2.0): + resolution: {integrity: sha512-/nrEbyL8UROXKIMXe+f+LZN2ckvkwV2Qa+GGe/H26oEIc+wq/ybSG9REDwQiSt2OaDQGu0MwmA4BKmkL6wAWcA==} + deprecated: '@tsparticles/react is the new version, please use that' + requiresBuild: true + peerDependencies: + react: '>=16' + dependencies: + react: 18.2.0 + tsparticles-engine: 2.12.0 + dev: false + /react-vertical-timeline-component@3.6.0(react@18.2.0): resolution: {integrity: sha512-l9zulqjIGlRuaQeplGzV4r/tG2RYBpYt84Il8w4IxnJze2cDIGI04MKo3F7f1sHT0Sih1ohEFts8UV23AJS15Q==} requiresBuild: true @@ -9587,6 +9768,10 @@ packages: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} dev: false + /regenerator-runtime@0.12.1: + resolution: {integrity: sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==} + dev: false + /regenerator-runtime@0.13.11: resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} dev: false @@ -10003,6 +10188,10 @@ packages: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} dev: false + /shallow-equal@1.2.1: + resolution: {integrity: sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==} + dev: false + /shallowequal@1.1.0: resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} dev: false @@ -10664,6 +10853,281 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: false + /tsparticles-basic@2.12.0: + resolution: {integrity: sha512-pN6FBpL0UsIUXjYbiui5+IVsbIItbQGOlwyGV55g6IYJBgdTNXgFX0HRYZGE9ZZ9psEXqzqwLM37zvWnb5AG9g==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + tsparticles-move-base: 2.12.0 + tsparticles-shape-circle: 2.12.0 + tsparticles-updater-color: 2.12.0 + tsparticles-updater-opacity: 2.12.0 + tsparticles-updater-out-modes: 2.12.0 + tsparticles-updater-size: 2.12.0 + dev: false + + /tsparticles-engine@2.12.0: + resolution: {integrity: sha512-ZjDIYex6jBJ4iMc9+z0uPe7SgBnmb6l+EJm83MPIsOny9lPpetMsnw/8YJ3xdxn8hV+S3myTpTN1CkOVmFv0QQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + requiresBuild: true + dev: false + + /tsparticles-interaction-external-attract@2.12.0: + resolution: {integrity: sha512-0roC6D1QkFqMVomcMlTaBrNVjVOpyNzxIUsjMfshk2wUZDAvTNTuWQdUpmsLS4EeSTDN3rzlGNnIuuUQqyBU5w==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-bounce@2.12.0: + resolution: {integrity: sha512-MMcqKLnQMJ30hubORtdq+4QMldQ3+gJu0bBYsQr9BsThsh8/V0xHc1iokZobqHYVP5tV77mbFBD8Z7iSCf0TMQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-bubble@2.12.0: + resolution: {integrity: sha512-5kImCSCZlLNccXOHPIi2Yn+rQWTX3sEa/xCHwXW19uHxtILVJlnAweayc8+Zgmb7mo0DscBtWVFXHPxrVPFDUA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-connect@2.12.0: + resolution: {integrity: sha512-ymzmFPXz6AaA1LAOL5Ihuy7YSQEW8MzuSJzbd0ES13U8XjiU3HlFqlH6WGT1KvXNw6WYoqrZt0T3fKxBW3/C3A==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-grab@2.12.0: + resolution: {integrity: sha512-iQF/A947hSfDNqAjr49PRjyQaeRkYgTYpfNmAf+EfME8RsbapeP/BSyF6mTy0UAFC0hK2A2Hwgw72eT78yhXeQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-pause@2.12.0: + resolution: {integrity: sha512-4SUikNpsFROHnRqniL+uX2E388YTtfRWqqqZxRhY0BrijH4z04Aii3YqaGhJxfrwDKkTQlIoM2GbFT552QZWjw==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-push@2.12.0: + resolution: {integrity: sha512-kqs3V0dgDKgMoeqbdg+cKH2F+DTrvfCMrPF1MCCUpBCqBiH+TRQpJNNC86EZYHfNUeeLuIM3ttWwIkk2hllR/Q==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-remove@2.12.0: + resolution: {integrity: sha512-2eNIrv4m1WB2VfSVj46V2L/J9hNEZnMgFc+A+qmy66C8KzDN1G8aJUAf1inW8JVc0lmo5+WKhzex4X0ZSMghBg==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-repulse@2.12.0: + resolution: {integrity: sha512-rSzdnmgljeBCj5FPp4AtGxOG9TmTsK3AjQW0vlyd1aG2O5kSqFjR+FuT7rfdSk9LEJGH5SjPFE6cwbuy51uEWA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-external-slow@2.12.0: + resolution: {integrity: sha512-2IKdMC3om7DttqyroMtO//xNdF0NvJL/Lx7LDo08VpfTgJJozxU+JAUT8XVT7urxhaDzbxSSIROc79epESROtA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-particles-attract@2.12.0: + resolution: {integrity: sha512-Hl8qwuwF9aLq3FOkAW+Zomu7Gb8IKs6Y3tFQUQScDmrrSCaeRt2EGklAiwgxwgntmqzL7hbMWNx06CHHcUQKdQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-particles-collisions@2.12.0: + resolution: {integrity: sha512-Se9nPWlyPxdsnHgR6ap4YUImAu3W5MeGKJaQMiQpm1vW8lSMOUejI1n1ioIaQth9weKGKnD9rvcNn76sFlzGBA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-interaction-particles-links@2.12.0: + resolution: {integrity: sha512-e7I8gRs4rmKfcsHONXMkJnymRWpxHmeaJIo4g2NaDRjIgeb2AcJSWKWZvrsoLnm7zvaf/cMQlbN6vQwCixYq3A==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-move-base@2.12.0: + resolution: {integrity: sha512-oSogCDougIImq+iRtIFJD0YFArlorSi8IW3HD2gO3USkH+aNn3ZqZNTqp321uB08K34HpS263DTbhLHa/D6BWw==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-move-parallax@2.12.0: + resolution: {integrity: sha512-58CYXaX8Ih5rNtYhpnH0YwU4Ks7gVZMREGUJtmjhuYN+OFr9FVdF3oDIJ9N6gY5a5AnAKz8f5j5qpucoPRcYrQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-particles.js@2.12.0: + resolution: {integrity: sha512-LyOuvYdhbUScmA4iDgV3LxA0HzY1DnOwQUy3NrPYO393S2YwdDjdwMod6Btq7EBUjg9FVIh+sZRizgV5elV2dg==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-plugin-easing-quad@2.12.0: + resolution: {integrity: sha512-2mNqez5pydDewMIUWaUhY5cNQ80IUOYiujwG6qx9spTq1D6EEPLbRNAEL8/ecPdn2j1Um3iWSx6lo340rPkv4Q==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-circle@2.12.0: + resolution: {integrity: sha512-L6OngbAlbadG7b783x16ns3+SZ7i0SSB66M8xGa5/k+YcY7zm8zG0uPt1Hd+xQDR2aNA3RngVM10O23/Lwk65Q==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-image@2.12.0: + resolution: {integrity: sha512-iCkSdUVa40DxhkkYjYuYHr9MJGVw+QnQuN5UC+e/yBgJQY+1tQL8UH0+YU/h0GHTzh5Sm+y+g51gOFxHt1dj7Q==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-line@2.12.0: + resolution: {integrity: sha512-RcpKmmpKlk+R8mM5wA2v64Lv1jvXtU4SrBDv3vbdRodKbKaWGGzymzav1Q0hYyDyUZgplEK/a5ZwrfrOwmgYGA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-polygon@2.12.0: + resolution: {integrity: sha512-5YEy7HVMt1Obxd/jnlsjajchAlYMr9eRZWN+lSjcFSH6Ibra7h59YuJVnwxOxAobpijGxsNiBX0PuGQnB47pmA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-square@2.12.0: + resolution: {integrity: sha512-33vfajHqmlODKaUzyPI/aVhnAOT09V7nfEPNl8DD0cfiNikEuPkbFqgJezJuE55ebtVo7BZPDA9o7GYbWxQNuw==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-star@2.12.0: + resolution: {integrity: sha512-4sfG/BBqm2qBnPLASl2L5aBfCx86cmZLXeh49Un+TIR1F5Qh4XUFsahgVOG0vkZQa+rOsZPEH04xY5feWmj90g==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-shape-text@2.12.0: + resolution: {integrity: sha512-v2/FCA+hyTbDqp2ymFOe97h/NFb2eezECMrdirHWew3E3qlvj9S/xBibjbpZva2gnXcasBwxn0+LxKbgGdP0rA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-slim@2.12.0: + resolution: {integrity: sha512-27w9aGAAAPKHvP4LHzWFpyqu7wKyulayyaZ/L6Tuuejy4KP4BBEB4rY5GG91yvAPsLtr6rwWAn3yS+uxnBDpkA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-basic: 2.12.0 + tsparticles-engine: 2.12.0 + tsparticles-interaction-external-attract: 2.12.0 + tsparticles-interaction-external-bounce: 2.12.0 + tsparticles-interaction-external-bubble: 2.12.0 + tsparticles-interaction-external-connect: 2.12.0 + tsparticles-interaction-external-grab: 2.12.0 + tsparticles-interaction-external-pause: 2.12.0 + tsparticles-interaction-external-push: 2.12.0 + tsparticles-interaction-external-remove: 2.12.0 + tsparticles-interaction-external-repulse: 2.12.0 + tsparticles-interaction-external-slow: 2.12.0 + tsparticles-interaction-particles-attract: 2.12.0 + tsparticles-interaction-particles-collisions: 2.12.0 + tsparticles-interaction-particles-links: 2.12.0 + tsparticles-move-base: 2.12.0 + tsparticles-move-parallax: 2.12.0 + tsparticles-particles.js: 2.12.0 + tsparticles-plugin-easing-quad: 2.12.0 + tsparticles-shape-circle: 2.12.0 + tsparticles-shape-image: 2.12.0 + tsparticles-shape-line: 2.12.0 + tsparticles-shape-polygon: 2.12.0 + tsparticles-shape-square: 2.12.0 + tsparticles-shape-star: 2.12.0 + tsparticles-shape-text: 2.12.0 + tsparticles-updater-color: 2.12.0 + tsparticles-updater-life: 2.12.0 + tsparticles-updater-opacity: 2.12.0 + tsparticles-updater-out-modes: 2.12.0 + tsparticles-updater-rotate: 2.12.0 + tsparticles-updater-size: 2.12.0 + tsparticles-updater-stroke-color: 2.12.0 + dev: false + + /tsparticles-updater-color@2.12.0: + resolution: {integrity: sha512-KcG3a8zd0f8CTiOrylXGChBrjhKcchvDJjx9sp5qpwQK61JlNojNCU35xoaSk2eEHeOvFjh0o3CXWUmYPUcBTQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-life@2.12.0: + resolution: {integrity: sha512-J7RWGHAZkowBHpcLpmjKsxwnZZJ94oGEL2w+wvW1/+ZLmAiFFF6UgU0rHMC5CbHJT4IPx9cbkYMEHsBkcRJ0Bw==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-opacity@2.12.0: + resolution: {integrity: sha512-YUjMsgHdaYi4HN89LLogboYcCi1o9VGo21upoqxq19yRy0hRCtx2NhH22iHF/i5WrX6jqshN0iuiiNefC53CsA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-out-modes@2.12.0: + resolution: {integrity: sha512-owBp4Gk0JNlSrmp12XVEeBroDhLZU+Uq3szbWlHGSfcR88W4c/0bt0FiH5bHUqORIkw+m8O56hCjbqwj69kpOQ==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-rotate@2.12.0: + resolution: {integrity: sha512-waOFlGFmEZOzsQg4C4VSejNVXGf4dMf3fsnQrEROASGf1FCd8B6WcZau7JtXSTFw0OUGuk8UGz36ETWN72DkCw==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-size@2.12.0: + resolution: {integrity: sha512-B0yRdEDd/qZXCGDL/ussHfx5YJ9UhTqNvmS5X2rR2hiZhBAE2fmsXLeWkdtF2QusjPeEqFDxrkGiLOsh6poqRA==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + + /tsparticles-updater-stroke-color@2.12.0: + resolution: {integrity: sha512-MPou1ZDxsuVq6SN1fbX+aI5yrs6FyP2iPCqqttpNbWyL+R6fik1rL0ab/x02B57liDXqGKYomIbBQVP3zUTW1A==} + deprecated: starting from tsparticles v3 the packages are now moved to @tsparticles/package-name instead of tsparticles-package-name + dependencies: + tsparticles-engine: 2.12.0 + dev: false + /tsutils@3.21.0(typescript@4.9.5): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} diff --git a/Frontend/src/App.tsx b/Frontend/src/App.tsx index cfa4dad..66e1446 100644 --- a/Frontend/src/App.tsx +++ b/Frontend/src/App.tsx @@ -11,6 +11,8 @@ import Timeline from './Components/Timeline/Timeline'; import Intro from './Components/Introduction/Intro'; import Registration from './Components/TeamRegistration/TeamRegi'; import ContactUs from './Components/ContactUs/ContactUs'; +import Card from './Components/Card/Card'; +import Particles from './Components/Particles/ParticleDesign'; import "@fontsource/ibm-plex-mono" @@ -22,14 +24,16 @@ function App() { } /> +
+ {/* */} - + +
} /> @@ -38,4 +42,4 @@ function App() { ); } -export default App; +export default App; \ No newline at end of file diff --git a/Frontend/src/Components/Card/Card.css b/Frontend/src/Components/Card/Card.css new file mode 100644 index 0000000..9bae51a --- /dev/null +++ b/Frontend/src/Components/Card/Card.css @@ -0,0 +1,13 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +html, +body { + padding: 0; + margin: 0; +} + +* { + box-sizing: border-box; +} \ No newline at end of file diff --git a/Frontend/src/Components/Card/Card.tsx b/Frontend/src/Components/Card/Card.tsx new file mode 100644 index 0000000..713ce01 --- /dev/null +++ b/Frontend/src/Components/Card/Card.tsx @@ -0,0 +1,137 @@ +import React, { useState, useRef, useEffect, ReactElement } from 'react'; +import './Card.css' + +// Data +import data from './data.json'; +import { WidthFull } from '@mui/icons-material'; + +const Carousel: React.FC = (): ReactElement => { + const maxScrollWidth = useRef(0); + const [currentIndex, setCurrentIndex] = useState(0); + const carousel = useRef(null); + + const movePrev = (): void => { + if (currentIndex > 0) { + setCurrentIndex((prevState) => prevState - 1); + } + }; + + const moveNext = (): void => { + if ( + carousel.current !== null && + carousel.current.offsetWidth * currentIndex <= maxScrollWidth.current + ) { + setCurrentIndex((prevState) => prevState + 1); + } + }; + + const isDisabled = (direction: 'prev' | 'next'): boolean => { + if (direction === 'prev') { + return currentIndex <= 0; + } + + if (direction === 'next' && carousel.current !== null) { + return ( + carousel.current.offsetWidth * currentIndex >= maxScrollWidth.current + ); + } + + return false; + }; + + useEffect(() => { + if (carousel !== null && carousel.current !== null) { + carousel.current.scrollLeft = carousel.current.offsetWidth * currentIndex; + } + }, [currentIndex]); + + useEffect(() => { + maxScrollWidth.current = carousel.current + ? carousel.current.scrollWidth - carousel.current.offsetWidth + : 0; + }, []); + + return ( +
+

+ Hackaholics 5.0 +

+
+
+ + +
+ + {/* carousel bar */} +
+ {data.resources.map((resource, index) => { + return ( +
+ + {resource.title} + +
+ ); + })} +
+
+
+ ); +}; + +export default Carousel; \ No newline at end of file diff --git a/Frontend/src/Components/Card/data.json b/Frontend/src/Components/Card/data.json new file mode 100644 index 0000000..a7f7f4b --- /dev/null +++ b/Frontend/src/Components/Card/data.json @@ -0,0 +1,49 @@ +{ + "resources": [ + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb10-1.fna.fbcdn.net/v/t39.30808-6/354453406_645590694281448_1781249478411545919_n.jpg?_nc_cat=108&ccb=1-7&_nc_sid=a73e89&_nc_ohc=Q1FavUuoUAMAX8MeZ1u&_nc_ht=scontent.fcmb10-1.fna&oh=00_AfAAf5J5Tj6nWdBzOA7eyise8yiQMiLy9xzrhGt0PA6H2A&oe=65C35AB1" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb10-1.fna.fbcdn.net/v/t39.30808-6/354470990_645590660948118_820620153307905222_n.jpg?_nc_cat=100&ccb=1-7&_nc_sid=a73e89&_nc_ohc=nsq0b4kzdkAAX-6qMci&_nc_ht=scontent.fcmb10-1.fna&oh=00_AfDorPV1e2Dmd_7lYReMzP7WrNxGJbLUdilY1JwJECbh6g&oe=65C26FEB" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/356632413_645600034280514_1421169240298804468_n.jpg?_nc_cat=105&ccb=1-7&_nc_sid=a73e89&_nc_ohc=3ImysAsoFzQAX9Mx-AV&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfALjsCmP3Rsyo3PtWLasFR28AUd0oPjgiDBfB9p7mX6Uw&oe=65C3F038" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/356660568_645608677612983_2836645732545907395_n.jpg?_nc_cat=110&ccb=1-7&_nc_sid=a73e89&_nc_ohc=vi5LDlVSpU8AX_PLWk7&_nc_oc=AQkeBsm3KKxE8sDohpzdXcB0pSb1t-M3_uVdsdNR9731fAIXwheUgOKi4NxMIU9blrU&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfBnkGKpT2gHFeTWsg3o-fo4cy9PELiam5OPeWyQXiOdyA&oe=65C3C78B" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/354464542_645609107612940_4679852385528813285_n.jpg?_nc_cat=105&ccb=1-7&_nc_sid=a73e89&_nc_ohc=s3lEVzkoGUcAX_hkcMe&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfChwmE4S8huoIVFrgwiK-Ac5zpOSVqdpCB_yX2d4n981g&oe=65C31E0E" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/355095014_645609044279613_5118474991947069576_n.jpg?_nc_cat=105&ccb=1-7&_nc_sid=a73e89&_nc_ohc=uyHG7bEkN4MAX8pNqm8&_nc_oc=AQm9xk8ZoZLZIHbvkcKuQMD6_H99lHeFHSjpTSd0egvibEFn1QDM9Eaqs3OSv4PTCPM&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfB_78du78OtEFrhHhiNvNQ_pDK-a9RkkfcP3SsffSrvdA&oe=65C2FFB8" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/354623051_645609014279616_2405070884842817133_n.jpg?_nc_cat=106&ccb=1-7&_nc_sid=a73e89&_nc_ohc=CFsdBoS0gOgAX-i91dV&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfBAVCbHPmgc4XmTkiQ_OaYx6KUUCd7GRtXRnsaeNQaDyQ&oe=65C2A5FC" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/354582232_645608820946302_8808117566942528300_n.jpg?_nc_cat=100&ccb=1-7&_nc_sid=a73e89&_nc_ohc=pD-WuwmSXNUAX-ygtDl&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfCKMirXgLND7jPIGKKc3m9Yvgn4YEvloUL7XbBeRLMOcA&oe=65C3A85A" + }, + { + "title": "Hackaholics 5.0", + + "imageUrl": "https://scontent.fcmb2-2.fna.fbcdn.net/v/t39.30808-6/355480523_645602277613623_1774779047277731409_n.jpg?_nc_cat=111&ccb=1-7&_nc_sid=a73e89&_nc_ohc=o8ADleZ9cK0AX-Fpm-b&_nc_ht=scontent.fcmb2-2.fna&oh=00_AfAKcZledgfHwP3_c2ksY5OrYw8LaX5OC7-p-UqMaUdOpw&oe=65C21249" + } + ] + } \ No newline at end of file diff --git a/Frontend/src/Components/Card/drive.jpg b/Frontend/src/Components/Card/drive.jpg new file mode 100644 index 0000000..9367833 Binary files /dev/null and b/Frontend/src/Components/Card/drive.jpg differ diff --git a/Frontend/src/Components/FAQ/FAQ.css b/Frontend/src/Components/FAQ/FAQ.css index a61f37d..29f5a0b 100644 --- a/Frontend/src/Components/FAQ/FAQ.css +++ b/Frontend/src/Components/FAQ/FAQ.css @@ -7,13 +7,15 @@ } .faqDiv { width: 100%; - height: 70vh; + height: 90vh; background-color: #f5f5f5; color: black; display: flex; align-items: center; justify-content: center; flex-direction: column; + padding-bottom: 50px; + padding-top: 50px; } .faqContainor { width: 70%; diff --git a/Frontend/src/Components/FAQ/FAQContainor.tsx b/Frontend/src/Components/FAQ/FAQContainor.tsx index 068ba7b..1638f60 100644 --- a/Frontend/src/Components/FAQ/FAQContainor.tsx +++ b/Frontend/src/Components/FAQ/FAQContainor.tsx @@ -1,54 +1,59 @@ -import React from 'react'; -import { styled } from '@mui/material/styles'; -import { ArrowForwardIosSharp } from '@mui/icons-material'; -import MuiAccordion, { AccordionProps } from '@mui/material/Accordion'; +import React from "react"; +import { styled } from "@mui/material/styles"; +import { ArrowForwardIosSharp } from "@mui/icons-material"; +import MuiAccordion, { AccordionProps } from "@mui/material/Accordion"; import MuiAccordionSummary, { AccordionSummaryProps, -} from '@mui/material/AccordionSummary'; -import MuiAccordionDetails from '@mui/material/AccordionDetails'; -import Typography from '@mui/material/Typography'; +} from "@mui/material/AccordionSummary"; +import MuiAccordionDetails from "@mui/material/AccordionDetails"; +import Typography from "@mui/material/Typography"; import "./FAQ.css"; const Accordion = styled((props: AccordionProps) => ( ))(({ theme }) => ({ - '&:not(:last-child)': { + "&:not(:last-child)": { borderBottom: 0, }, - '&::before': { - display: 'none', + "&::before": { + display: "none", }, })); const AccordionSummary = styled((props: AccordionSummaryProps) => ( } + expandIcon={} {...props} /> ))(({ theme }) => ({ - color: 'white', - border: 'none', - '& .MuiAccordionSummary-expandIconWrapper.Mui-expanded': { - transform: 'rotate(90deg)', + color: "white", + border: "none", + "& .MuiAccordionSummary-expandIconWrapper.Mui-expanded": { + transform: "rotate(90deg)", }, - '& .MuiAccordionSummary-content': { + "& .MuiAccordionSummary-content": { marginLeft: theme.spacing(1), }, })); const AccordionDetails = styled(MuiAccordionDetails)(({ theme }) => ({ padding: theme.spacing(2), - borderTop: '1px solid rgba(0, 0, 0, .125)', + borderTop: "1px solid rgba(0, 0, 0, .125)", })); // Define background colors for each accordion const accordionColors = { - panel1: '#18113A', - panel2: '#ffffff', - panel3: '#18113A', + panel1: "#18113A", + panel2: "#ffffff", + panel3: "#18113A", + panel4: "#ffffff", + panel5: "#18113A", + panel6: "#ffffff", + panel7: "#18113A", + panel8: "#ffffff", }; export default function CustomizedAccordions() { - const [expanded, setExpanded] = React.useState('panel1'); + const [expanded, setExpanded] = React.useState("panel1"); const handleChange = (panel: string) => (event: React.SyntheticEvent, newExpanded: boolean) => { @@ -58,53 +63,179 @@ export default function CustomizedAccordions() { return (
- - Collapsible Group Item #1 + + What is Hackaholics 6.0? - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse - malesuada lacus ex, sit amet blandit leo lobortis eget. Lorem ipsum dolor - sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, - sit amet blandit leo lobortis eget. + + Hackaholics 6.0 is an Inter University Girls’ Only Hackathon + organized by the IEEE WIE Student Branch Affinity Group of UCSC, + held for the sixth consecutive year. As an Ideathon, it encourages + female undergraduates to collaborate and address critical issues in + the society through innovative solutions. - - Collapsible Group Item #2 + + Who can participate in Hackaholics 6.0? - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse - malesuada lacus ex, sit amet blandit leo lobortis eget. Lorem ipsum dolor - sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, - sit amet blandit leo lobortis eget. + + The event is open to female undergraduates. Teams of three students + from the same university can participate in the hackathon. - - Collapsible Group Item #3 + + How can I participate? - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse - malesuada lacus ex, sit amet blandit leo lobortis eget. Lorem ipsum dolor - sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, - sit amet blandit leo lobortis eget. + + To participate, form a team of three students from your university. + Submit your innovative ideas during the initial round, and if + selected, proceed to the final hackathon where you'll present UI + prototypes and solutions. + + + + + + + How will the Scholarship Awareness Session benefit me? + + + + + The session aims to provide valuable insights into various + scholarships and internship programs, empowering you with knowledge + about opportunities that can enhance your academic and professional + journey. + + + + + + Do participants need coding skills? + + + + While coding skills can be beneficial, they are not mandatory. Teams + can include members with diverse skills, and participants without a + coding background can contribute ideas, creativity, and other + expertise. + + + + + + + What if I don't have experience in UI Prototyping? + + + + + No worries! Participants without UI Prototyping experience are still + encouraged to join. The event provides an opportunity to learn and + collaborate with others who may have expertise in this area. + + + + + + + How are the teams selected for the final hackathon? + + + + + The top 10 teams are selected based on the creativity, + innovativeness, and feasibility of their proposed ideas in the + initial round. + + + + + + + Can you elaborate on the two rounds of the final day? + + + + + In the first round, the top ten teams must pitch their proposed + ideas to the judging panel, out of which, the top five teams will be + selected based on various criteria, including innovation, + creativity, design aesthetics, feasibility, presentation skills, and + market potential. In the final round, the teams face a challenge + presented by the judging panel, where they must showcase their + adaptability and prowess in real-time, crafting innovative solutions + on the spot. diff --git a/Frontend/src/Components/Footer/Footer.tsx b/Frontend/src/Components/Footer/Footer.tsx index 89b33dc..a2ce446 100644 --- a/Frontend/src/Components/Footer/Footer.tsx +++ b/Frontend/src/Components/Footer/Footer.tsx @@ -1,16 +1,17 @@ import ucscwie from '../../Assets/Footer/wie-ucsc.png'; +import ieeewiee from '../../Assets/Footer/ieee-wie.png'; import "./Footer.css"; const Footer = () => { return ( -