Skip to content

Commit d689516

Browse files
authored
Merge pull request #36 from nnennaokoye/feat/create-personal-page
create-personal-page
2 parents 2c834bd + a1cf991 commit d689516

File tree

2 files changed

+103
-0
lines changed

2 files changed

+103
-0
lines changed
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
import Image from "next/image";
2+
import { Address } from "../../../components/scaffold-eth";
3+
import type { NextPage } from "next";
4+
import { AiFillGithub, AiFillInstagram, AiFillLinkedin, AiFillTwitterCircle } from "react-icons/ai";
5+
6+
const socials = [
7+
{
8+
name: "GitHub",
9+
url: "https://github.com/nnennaokoye",
10+
icon: AiFillGithub,
11+
},
12+
{
13+
name: "Twitter",
14+
url: "https://x.com/_0xNina",
15+
icon: AiFillTwitterCircle,
16+
},
17+
{
18+
name: "LinkedIn",
19+
url: "https://www.linkedin.com/in/nnennaokoye/",
20+
icon: AiFillLinkedin,
21+
},
22+
{
23+
name: "Instagram",
24+
url: "https://www.instagram.com/_ninacodes",
25+
icon: AiFillInstagram,
26+
},
27+
];
28+
29+
const NnennaOkoyePage: NextPage = () => {
30+
return (
31+
<div className="flex flex-col min-h-screen py-10 px-4 sm:py-16 sm:px-6 lg:px-8 bg-base-100">
32+
<div className="w-full max-w-6xl mx-auto">
33+
{/* Centered Vertical Layout */}
34+
<div className="flex flex-col items-center animate-fadeIn">
35+
<div className="flex justify-center mb-8">
36+
<div className="relative w-32 h-32 overflow-hidden border-4 border-secondary shadow-xl rounded-full">
37+
<Image
38+
src="/NnennaAvatar.jpg"
39+
alt="Nnenna Avatar"
40+
fill
41+
sizes="128px"
42+
priority
43+
style={{ objectFit: "cover", objectPosition: "center 18%" }}
44+
/>
45+
</div>
46+
</div>
47+
48+
{/* Name */}
49+
<h1 className="text-4xl sm:text-5xl font-bold text-center mb-4">NNENNA OKOYE</h1>
50+
51+
{/* Address */}
52+
<div className="flex items-center justify-center space-x-2 mb-6">
53+
<Address address="0x167142915AD0fAADD84d9741eC253B82aB8625cd" />
54+
</div>
55+
56+
{/* Bio Section */}
57+
<div className="prose max-w-2xl text-center mb-8">
58+
<p className="text-base-content/90 text-xl">
59+
Full-stack Web3 Developer with a passion for building decentralized applications. Currently exploring the
60+
intersection of blockchain technology and user-centric design. Building with Scaffold-ETH 2 and
61+
contributing to the future of Web3.
62+
</p>
63+
</div>
64+
65+
{/* Skills */}
66+
<div className="flex flex-wrap justify-center gap-3 py-4 mb-8">
67+
<div className="badge badge-primary badge-lg p-3 font-medium">Solidity</div>
68+
<div className="badge badge-secondary badge-lg p-3 font-medium">TypeScript</div>
69+
<div className="badge badge-accent badge-lg p-3 font-medium">Next.js</div>
70+
<div className="badge badge-accent badge-lg p-3 font-medium">React</div>
71+
<div className="badge badge-primary badge-lg p-3 font-medium">Hardhat</div>
72+
<div className="badge badge-secondary badge-lg p-3 font-medium">Ethers.js</div>
73+
</div>
74+
75+
{/* Connect with me section with horizontal lines */}
76+
<div className="flex items-center justify-center w-full my-6">
77+
<div className="flex-grow border-t border-white"></div>
78+
<div className="mx-4 text-base font-semibold text-base-content">Connect with me</div>
79+
<div className="flex-grow border-t border-white"></div>
80+
</div>
81+
82+
{/* Social Links */}
83+
<div className="flex space-x-6">
84+
{socials.map(({ name, url, icon: Icon }) => (
85+
<a
86+
key={name}
87+
href={url}
88+
target="_blank"
89+
rel="noopener noreferrer"
90+
className="text-3xl text-base-content hover:text-accent dark:hover:text-accent transition-all duration-300 hover:scale-110"
91+
aria-label={name}
92+
>
93+
<Icon />
94+
</a>
95+
))}
96+
</div>
97+
</div>
98+
</div>
99+
</div>
100+
);
101+
};
102+
103+
export default NnennaOkoyePage;
113 KB
Loading

0 commit comments

Comments
 (0)