Skip to content

cyfrxD/portfolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

<title>Portfolio — Your Name</title> <style> :root { --bg: #0a0a0f; --surface: #111118; --surface2: #18181f; --border: rgba(255,255,255,0.07); --border-hover: rgba(255,255,255,0.15); --text: #f0eff8; --muted: #888899; --accent: #7c6af7; --accent2: #5be4c8; --accent3: #f76c8c; --grad: linear-gradient(135deg, #7c6af7 0%, #5be4c8 100%); }
  • { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body { background: var(--bg); color: var(--text); font-family: 'Syne', sans-serif; line-height: 1.6; overflow-x: hidden; }

/* NOISE TEXTURE */ body::before { content: ''; position: fixed; inset: 0; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E"); opacity: 0.03; pointer-events: none; z-index: 0; }

/* NAV */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 1.25rem 3rem; border-bottom: 1px solid var(--border); background: rgba(10,10,15,0.85); backdrop-filter: blur(16px); }

.nav-logo { font-size: 1.1rem; font-weight: 700; letter-spacing: -0.02em; background: var(--grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.nav-links { display: flex; gap: 2rem; list-style: none; } .nav-links a { color: var(--muted); text-decoration: none; font-size: 0.875rem; font-weight: 500; letter-spacing: 0.05em; text-transform: uppercase; transition: color 0.2s; } .nav-links a:hover { color: var(--text); }

/* HERO */ .hero { min-height: 100vh; display: flex; align-items: center; padding: 8rem 3rem 4rem; position: relative; overflow: hidden; }

.hero-bg { position: absolute; inset: 0; overflow: hidden; z-index: -1; }

.hero-orb { position: absolute; border-radius: 50%; filter: blur(80px); opacity: 0.18; }

.hero-orb-1 { width: 600px; height: 600px; background: var(--accent); top: -100px; right: -100px; animation: float 8s ease-in-out infinite; }

.hero-orb-2 { width: 400px; height: 400px; background: var(--accent2); bottom: -50px; left: 20%; animation: float 10s ease-in-out infinite reverse; }

@keyframes float { 0%, 100% { transform: translateY(0px) scale(1); } 50% { transform: translateY(-30px) scale(1.05); } }

.hero-content { max-width: 800px; }

.hero-tag { display: inline-flex; align-items: center; gap: 0.5rem; font-family: 'DM Mono', monospace; font-size: 0.8rem; color: var(--accent2); border: 1px solid rgba(91,228,200,0.25); padding: 0.35rem 0.75rem; border-radius: 100px; margin-bottom: 1.5rem; letter-spacing: 0.02em; }

.hero-tag::before { content: ''; width: 6px; height: 6px; background: var(--accent2); border-radius: 50%; animation: pulse 2s ease-in-out infinite; }

@keyframes pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.4; transform: scale(0.8); } }

h1 { font-size: clamp(2.8rem, 7vw, 5.5rem); font-weight: 800; line-height: 1.05; letter-spacing: -0.04em; margin-bottom: 1.5rem; }

.hero-name { display: block; }

.hero-role { display: block; background: var(--grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.hero-desc { font-size: 1.1rem; color: var(--muted); max-width: 500px; margin-bottom: 2.5rem; font-weight: 400; line-height: 1.7; }

.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

.btn-primary { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.85rem 2rem; background: var(--grad); color: #fff; border: none; border-radius: 8px; font-family: 'Syne', sans-serif; font-size: 0.9rem; font-weight: 600; cursor: pointer; text-decoration: none; transition: opacity 0.2s, transform 0.2s; letter-spacing: 0.01em; }

.btn-primary:hover { opacity: 0.88; transform: translateY(-2px); }

.btn-outline { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.85rem 2rem; background: transparent; color: var(--text); border: 1px solid var(--border-hover); border-radius: 8px; font-family: 'Syne', sans-serif; font-size: 0.9rem; font-weight: 600; cursor: pointer; text-decoration: none; transition: border-color 0.2s, transform 0.2s, background 0.2s; letter-spacing: 0.01em; }

.btn-outline:hover { border-color: var(--accent); background: rgba(124,106,247,0.08); transform: translateY(-2px); }

/* SCROLL INDICATOR */ .scroll-hint { position: absolute; bottom: 2.5rem; left: 3rem; display: flex; align-items: center; gap: 0.75rem; color: var(--muted); font-size: 0.8rem; font-family: 'DM Mono', monospace; letter-spacing: 0.05em; }

.scroll-line { width: 40px; height: 1px; background: var(--muted); position: relative; overflow: hidden; }

.scroll-line::after { content: ''; position: absolute; inset: 0; background: var(--accent2); animation: scan 2s ease-in-out infinite; }

@keyframes scan { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } }

/* SECTIONS */ section { padding: 6rem 3rem; position: relative; z-index: 1; }

.section-label { font-family: 'DM Mono', monospace; font-size: 0.75rem; color: var(--accent); letter-spacing: 0.15em; text-transform: uppercase; margin-bottom: 1rem; }

h2 { font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; letter-spacing: -0.03em; margin-bottom: 3rem; line-height: 1.1; }

/* ABOUT */ .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; max-width: 1100px; }

.about-text p { color: var(--muted); font-size: 1rem; line-height: 1.8; margin-bottom: 1.25rem; font-weight: 400; }

.about-text p strong { color: var(--text); font-weight: 600; }

.about-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--border); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; }

.stat-box { background: var(--surface); padding: 2rem 1.5rem; transition: background 0.2s; }

.stat-box:hover { background: var(--surface2); }

.stat-num { font-size: 2.5rem; font-weight: 800; letter-spacing: -0.04em; background: var(--grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

.stat-label { color: var(--muted); font-size: 0.85rem; margin-top: 0.25rem; }

/* SKILLS */ .skills-bg { background: var(--surface); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }

.skills-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; max-width: 1100px; }

.skill-card { background: var(--bg); border: 1px solid var(--border); border-radius: 12px; padding: 1.5rem; transition: border-color 0.2s, transform 0.2s; cursor: default; }

.skill-card:hover { border-color: var(--border-hover); transform: translateY(-4px); }

.skill-icon { width: 40px; height: 40px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.25rem; margin-bottom: 1rem; }

.skill-icon.purple { background: rgba(124,106,247,0.15); } .skill-icon.teal { background: rgba(91,228,200,0.15); } .skill-icon.pink { background: rgba(247,108,140,0.15); } .skill-icon.amber { background: rgba(251,191,36,0.15); }

.skill-name { font-size: 1rem; font-weight: 700; margin-bottom: 0.5rem; }

.skill-desc { color: var(--muted); font-size: 0.85rem; line-height: 1.6; }

.skill-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 1rem; }

.tag { font-family: 'DM Mono', monospace; font-size: 0.7rem; padding: 0.2rem 0.6rem; border-radius: 4px; background: var(--surface2); color: var(--muted); letter-spacing: 0.02em; }

/* PROJECTS */ .projects-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 1.5rem; max-width: 1100px; }

.project-card { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; transition: border-color 0.25s, transform 0.25s; cursor: pointer; }

.project-card:hover { border-color: var(--accent); transform: translateY(-6px); }

.project-card:hover .project-thumb-overlay { opacity: 1; }

.project-thumb { height: 200px; position: relative; overflow: hidden; }

.project-thumb-bg { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 3.5rem; transition: transform 0.3s; }

.project-card:hover .project-thumb-bg { transform: scale(1.05); }

.project-thumb-bg.purple { background: linear-gradient(135deg, #1a1040, #2d1a6e); } .project-thumb-bg.teal { background: linear-gradient(135deg, #051f1a, #0a3f35); } .project-thumb-bg.pink { background: linear-gradient(135deg, #1f0a14, #3f1028); }

.project-thumb-overlay { position: absolute; inset: 0; background: rgba(124,106,247,0.2); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.25s; font-size: 2rem; }

.project-body { padding: 1.5rem; }

.project-meta { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.5rem; }

.project-title { font-size: 1.1rem; font-weight: 700; letter-spacing: -0.01em; }

.project-year { font-family: 'DM Mono', monospace; font-size: 0.75rem; color: var(--muted); }

.project-desc { color: var(--muted); font-size: 0.875rem; line-height: 1.7; margin-bottom: 1rem; }

.project-stack { display: flex; flex-wrap: wrap; gap: 0.4rem; }

.stack-tag { font-family: 'DM Mono', monospace; font-size: 0.7rem; padding: 0.25rem 0.6rem; border-radius: 4px; border: 1px solid var(--border); color: var(--accent2); letter-spacing: 0.02em; }

/* CONTACT */ .contact-bg { background: var(--surface); border-top: 1px solid var(--border); }

.contact-inner { max-width: 600px; }

.contact-desc { color: var(--muted); font-size: 1rem; line-height: 1.8; margin-bottom: 2.5rem; }

.contact-links { display: flex; flex-direction: column; gap: 0.75rem; margin-bottom: 2.5rem; }

.contact-link { display: flex; align-items: center; gap: 1rem; padding: 1rem 1.25rem; border: 1px solid var(--border); border-radius: 10px; text-decoration: none; color: var(--text); background: var(--bg); transition: border-color 0.2s, transform 0.2s; font-size: 0.9rem; }

.contact-link:hover { border-color: var(--accent); transform: translateX(6px); }

.contact-link-icon { width: 36px; height: 36px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 1rem; flex-shrink: 0; }

.contact-link-icon.purple { background: rgba(124,106,247,0.15); } .contact-link-icon.teal { background: rgba(91,228,200,0.15); } .contact-link-icon.pink { background: rgba(247,108,140,0.15); }

.contact-link-arrow { margin-left: auto; color: var(--muted); font-size: 1.1rem; transition: transform 0.2s; }

.contact-link:hover .contact-link-arrow { transform: translateX(4px); color: var(--accent); }

/* FOOTER */ footer { padding: 2rem 3rem; border-top: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-size: 0.8rem; }

footer span { font-family: 'DM Mono', monospace; letter-spacing: 0.02em; }

/* DIVIDER LINE */ .divider { height: 1px; background: var(--border); max-width: 1100px; }

/* ANIMATIONS */ .fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; }

.fade-in.visible { opacity: 1; transform: translateY(0); }

/* RESPONSIVE */ @media (max-width: 768px) { nav { padding: 1rem 1.5rem; } .nav-links { display: none; } section { padding: 4rem 1.5rem; } .hero { padding: 7rem 1.5rem 4rem; } .about-grid { grid-template-columns: 1fr; gap: 2rem; } .projects-grid { grid-template-columns: 1fr; } .scroll-hint { left: 1.5rem; } footer { flex-direction: column; gap: 0.5rem; text-align: center; } } </style>

YourName.dev
Hire Me
Available for work

Your Name Full-Stack Developer

I build fast, elegant, and scalable digital experiences — from pixel-perfect UIs to robust backend systems.

scroll to explore

// about me

Crafting code
with purpose

Hi! I'm a full-stack developer with a passion for building products that make a difference. I love the intersection of design and engineering — where aesthetics meet functionality.

With experience across the entire stack, I take projects from idea to deployment. I believe great code is clean, fast, and maintainable — and great UI is intuitive, accessible, and delightful.

When I'm not building, you'll find me exploring new technologies, contributing to open source, or tinkering with side projects.

3+
Years Experience
20+
Projects Shipped
15+
Happy Clients
Cups of Coffee

// what I do

Skills & Expertise

Frontend Development
Building responsive, performant, and accessible user interfaces with modern frameworks.
React Next.js TypeScript Tailwind
🛠
Backend Development
Designing scalable APIs and server-side applications with reliability at the core.
Node.js Python REST GraphQL
🗄
Databases & DevOps
Managing data and infrastructure to keep applications fast, secure, and always available.
PostgreSQL MongoDB Docker AWS
🎨
UI/UX Design
Translating ideas into clean, intuitive experiences that users love to interact with.
Figma Prototyping CSS Animation

// my work

Featured Projects

<div class="project-card fade-in">
  <div class="project-thumb">
    <div class="project-thumb-bg purple">🚀</div>
    <div class="project-thumb-overlay">→</div>
  </div>
  <div class="project-body">
    <div class="project-meta">
      <div class="project-title">Project Alpha</div>
      <div class="project-year">2024</div>
    </div>
    <p class="project-desc">A SaaS analytics dashboard with real-time data visualization, user management, and subscription billing.</p>
    <div class="project-stack">
      <span class="stack-tag">React</span>
      <span class="stack-tag">Node.js</span>
      <span class="stack-tag">PostgreSQL</span>
      <span class="stack-tag">Stripe</span>
    </div>
  </div>
</div>

<div class="project-card fade-in" style="transition-delay:0.1s">
  <div class="project-thumb">
    <div class="project-thumb-bg teal">🌿</div>
    <div class="project-thumb-overlay">→</div>
  </div>
  <div class="project-body">
    <div class="project-meta">
      <div class="project-title">Project Beta</div>
      <div class="project-year">2024</div>
    </div>
    <p class="project-desc">An e-commerce platform with AI-powered product recommendations, fast search, and a seamless checkout experience.</p>
    <div class="project-stack">
      <span class="stack-tag">Next.js</span>
      <span class="stack-tag">Python</span>
      <span class="stack-tag">Redis</span>
      <span class="stack-tag">AWS</span>
    </div>
  </div>
</div>

<div class="project-card fade-in" style="transition-delay:0.2s">
  <div class="project-thumb">
    <div class="project-thumb-bg pink">✨</div>
    <div class="project-thumb-overlay">→</div>
  </div>
  <div class="project-body">
    <div class="project-meta">
      <div class="project-title">Project Gamma</div>
      <div class="project-year">2023</div>
    </div>
    <p class="project-desc">A real-time collaboration tool for remote teams with live cursors, shared whiteboards, and video calling.</p>
    <div class="project-stack">
      <span class="stack-tag">React</span>
      <span class="stack-tag">WebSockets</span>
      <span class="stack-tag">MongoDB</span>
      <span class="stack-tag">WebRTC</span>
    </div>
  </div>
</div>

// let's talk

Get In Touch

Have a project in mind, need a collaborator, or just want to say hello? My inbox is always open. I'll get back to you within 24 hours.

Send a Message →
© 2026 Your Name. All rights reserved. Built with ♥ and lots of ☕ <script> // Scroll animations const observer = new IntersectionObserver((entries) => { entries.forEach(e => { if (e.isIntersecting) { e.target.classList.add('visible'); } }); }, { threshold: 0.1 }); document.querySelectorAll('.fade-in').forEach(el => observer.observe(el)); // Smooth active nav highlighting const sections = document.querySelectorAll('section[id]'); const navLinks = document.querySelectorAll('.nav-links a'); window.addEventListener('scroll', () => { let current = ''; sections.forEach(s => { if (window.scrollY >= s.offsetTop - 120) current = s.getAttribute('id'); }); navLinks.forEach(a => { a.style.color = a.getAttribute('href') === '#' + current ? 'var(--text)' : ''; }); }); </script>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages