From 4c16d5c86f2eaa1fe222d811730894347fba38fa Mon Sep 17 00:00:00 2001 From: khang Date: Sun, 14 Jul 2024 02:33:40 -0700 Subject: [PATCH] banner added --- package-lock.json | 20 ++ package.json | 1 + src/App.css | 251 ++++++++++++++++++ src/App.js | 2 + .../img/Screenshot 2024-07-14 020546.png | Bin 0 -> 37350 bytes src/components/banner.js | 53 ++++ 6 files changed, 327 insertions(+) create mode 100644 src/assets/img/Screenshot 2024-07-14 020546.png create mode 100644 src/components/banner.js diff --git a/package-lock.json b/package-lock.json index ab5a596..86a5673 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "bootstrap": "^5.3.3", "react": "^18.3.1", "react-bootstrap": "^2.10.4", + "react-bootstrap-icons": "^1.11.4", "react-dom": "^18.3.1", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" @@ -14963,6 +14964,17 @@ } } }, + "node_modules/react-bootstrap-icons": { + "version": "1.11.4", + "resolved": "https://registry.npmjs.org/react-bootstrap-icons/-/react-bootstrap-icons-1.11.4.tgz", + "integrity": "sha512-lnkOpNEZ/Zr7mNxvjA9efuarCPSgtOuGA55XiRj7ASJnBjb1wEAdtJOd2Aiv9t07r7FLI1IgyZPg9P6jqWD/IA==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": ">=16.8.6" + } + }, "node_modules/react-dev-utils": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", @@ -28903,6 +28915,14 @@ "warning": "^4.0.3" } }, + "react-bootstrap-icons": { + "version": "1.11.4", + "resolved": "https://registry.npmjs.org/react-bootstrap-icons/-/react-bootstrap-icons-1.11.4.tgz", + "integrity": "sha512-lnkOpNEZ/Zr7mNxvjA9efuarCPSgtOuGA55XiRj7ASJnBjb1wEAdtJOd2Aiv9t07r7FLI1IgyZPg9P6jqWD/IA==", + "requires": { + "prop-types": "^15.7.2" + } + }, "react-dev-utils": { "version": "12.0.1", "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", diff --git a/package.json b/package.json index 566c11d..e73cf98 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "bootstrap": "^5.3.3", "react": "^18.3.1", "react-bootstrap": "^2.10.4", + "react-bootstrap-icons": "^1.11.4", "react-dom": "^18.3.1", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" diff --git a/src/App.css b/src/App.css index 74b5e05..dbc64d2 100644 --- a/src/App.css +++ b/src/App.css @@ -1,3 +1,253 @@ +/* custom fonts */ +@font-face { + font-family: centra; + src: url('./assets/font/CentraNo2-Bold.ttf'); + font-weight: bold; +} +@font-face { + font-family: centra; + src: url('./assets/font/CentraNo2-Medium.ttf'); + font-weight: 500; +} +@font-face { + font-family: centra; + src: url('./assets/font/CentraNo2-Book.ttf'); + font-weight: 400; +} + +/* default CSS */ + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +html { + scroll-behavior: smooth; + scroll-padding-top: 75px; +} + +body { + font-weight: 400; + overflow: hidden; + position: relative; + background-color: #61dafb !important; + color: #685454 !important; + font-family: 'Centra', sans-serif !important; +} +h1, h2, h3, h4, h5, h6 { + margin: 0; + padding: 0; + line-height: normal; +} + + +p, a, li, button, ul { + margin: 0; + padding: 0; + line-height: normal; + text-decoration: none; +} + +a:hover { + text-decoration: none; +} + +img { + width: 100%; + height: auto; +} + +button { + border: 0; + background-color: transparent; +} + +input:focus, textarea:focus, select:focus { + outline: none; +} + +@media (min-width:1700px) { + main .container { + max-width: 100%; + padding: 0 150px; + } +} + +p.success { + color: green; +} + +p.danger { + color: red; +} +/************ Navbar Css ************/ +nav.navbar { + padding: 18px 0; + position: fixed; + width: 100%; + top: 0; + z-index: 9999; + transition: 0.32s ease-in-out; +} +nav.navbar.scrolled { + padding: 0px 0; + background-color: #121212; +} +nav.navbar a.navbar-brand { + width: 9%; +} +nav.navbar .navbar-nav .nav-link.navbar-link { + font-weight: 400; + color: #fff !important; + letter-spacing: 0.8px; + padding: 0 25px; + font-size: 18px; + opacity: 0.75; +} +nav.navbar .navbar-nav a.nav-link.navbar-link:hover, +nav.navbar .navbar-nav a.nav-link.navbar-link.active { + opacity: 1; +} +span.navbar-text { + display: flex; + align-items: center; +} +.social-icon { + display: inline-block; + margin-left: 14px; +} +.social-icon a { + width: 42px; + height: 42px; + background: rgba(217, 217, 217, 0.1); + display: inline-flex; + border-radius: 50%; + margin-right: 6px; + align-items: center; + justify-content: center; + line-height: 1; + border: 1px solid rgba(255, 255, 255, 0.5); +} +.social-icon a::before { + content: ""; + width: 42px; + height: 42px; + position: absolute; + background-color: #ffffff; + border-radius: 50%; + transform: scale(0); + transition: 0.3s ease-in-out; +} +.social-icon a:hover::before { + transform: scale(1); +} +.social-icon a img { + width: 40%; + z-index: 1; + transition: 0.3s ease-in-out; +} +.social-icon a:hover img { + filter: brightness(0) saturate(100%) invert(0%) sepia(7%) saturate(98%) hue-rotate(346deg) brightness(95%) contrast(86%); +} +.navbar-text button { + font-weight: 700; + color: #fff; + border: 1px solid #fff; + padding: 18px 34px; + font-size: 18px; + margin-left: 18px; + position: relative; + background-color: transparent; + transition: 0.3s ease-in-out; +} +.navbar-text button span { + z-index: 1; +} +.navbar-text button::before { + content: ""; + width: 0%; + height: 100%; + position: absolute; + background-color: #fff; + left: 0; + top: 0; + z-index: -1; + transition: 0.3s ease-in-out; +} +.navbar-text button:hover { + color: #121212; +} +.navbar-text button:hover::before { + content: ""; + width: 100%; + height: 100%; + position: absolute; +} +nav.navbar .navbar-toggler:active, +nav.navbar .navbar-toggler:focus { + outline: none; + box-shadow: none; +} +nav.navbar .navbar-toggler-icon { + width: 24px; + height: 17px; + background-image: none; + position: relative; + border-bottom: 2px solid #fff; + transition: all 300ms linear; + top: -2px; +} +nav.navbar .navbar-toggler-icon:focus { + border-bottom: 2px solid #fff; +} +nav.navbar .navbar-toggler-icon:after, +nav.navbar .navbar-toggler-icon:before { + width: 24px; + position: absolute; + height: 2px; + background-color: #fff; + top: 0; + left: 0; + content: ''; + z-index: 2; + transition: all 300ms linear; +} +nav.navbar .navbar-toggler-icon:after { + top: 8px; +} +nav.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after { + transform: rotate(45deg); + background-color: #fff; + height: 2px; +} +nav.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before { + transform: translateY(8px) rotate(-45deg); + background-color: #fff; + height: 2px; +} +nav.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon { + border-color: transparent; +} +/* banner configuration */ +.banner { + padding-top: 100px; /* Adjust the value as needed */ + padding-bottom: 50px; /* Optional: Add some padding to the bottom for spacing */ + position: relative; /* Ensure the content is positioned correctly */ + z-index: 1; /* Ensure the banner content is above the background */ +} + +.banner img { + max-width: 100%; /* Ensure the image scales properly */ + height: auto; /* Maintain aspect ratio */ + display: block; /* Remove any inline-block spacing */ + margin: 0 auto; /* Center the image horizontally */ + background-color: transparent; /* Ensure the image background is transparent */ +} + + + .App { text-align: center; } @@ -36,3 +286,4 @@ transform: rotate(360deg); } } + diff --git a/src/App.js b/src/App.js index 7fcaa55..740ae14 100644 --- a/src/App.js +++ b/src/App.js @@ -1,11 +1,13 @@ import './App.css'; import NavBar from './components/Navbar'; +import Banner from './components/banner'; import 'bootstrap/dist/css/bootstrap.min.css'; function App() { return (
+
); } diff --git a/src/assets/img/Screenshot 2024-07-14 020546.png b/src/assets/img/Screenshot 2024-07-14 020546.png new file mode 100644 index 0000000000000000000000000000000000000000..9ba164c039a6a71a84d964207bb01d5e05101b89 GIT binary patch literal 37350 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 ixcDe#!pPPE{Qm*eh8yzuB5(-+0000 { + const job = "Web Developer"; + const [text, setText] = useState(''); + const [delta, setDelta] = useState(300); // Set an initial value + const period = 2000; + + useEffect(() => { + let ticker = setInterval(() => { + tick(); + }, delta); + return () => { clearInterval(ticker); }; + }, [text]); + + const tick = () => { + const fullText = job; + const updatedText = fullText.substring(0, text.length +1); + setText(updatedText); + + if(updatedText === fullText) { + setTimeout(() => { + setText(''); + setDelta(300); + }, period) + } + }; + + return ( +
+ + + + welcome to my portfolio +

{`Hi my name is Khang, a `} + {text} +

+

Hello, My name is Khang. I am a freshman majoring in computer science at Cal Poly Pomona. As a backend developer, I am proficient in JavaScript, React, Node.js, Python, Django, and MySQL. My passion for coding extends beyond the classroom—I’m also an avid manga enthusiast. Thank you for visiting my portfolio!

+ + + + Header Img + +
+
+
+ ); +} + +export default Banner;