Skip to content

Commit fb7577c

Browse files
committed
white bar bugfix, rename descriptions
1 parent ff5eba5 commit fb7577c

2 files changed

Lines changed: 10 additions & 9 deletions

File tree

src/components/Navbar.jsx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ export default function Navbar() {
1414
const [open, setOpen] = useState(false);
1515

1616
useEffect(() => {
17-
const onScroll = () => setScrolled(window.scrollY > 24);
17+
// Hysteresis: flip on past 32px, flip off below 8px — prevents the navbar
18+
// background from oscillating at a single threshold, which was producing a
19+
// visible flickering hairline at the bottom edge during slow scrolls.
20+
const onScroll = () => {
21+
const y = window.scrollY;
22+
setScrolled((prev) => (prev ? y > 8 : y > 32));
23+
};
1824
onScroll();
1925
window.addEventListener('scroll', onScroll, { passive: true });
2026
return () => window.removeEventListener('scroll', onScroll);
@@ -25,10 +31,8 @@ export default function Navbar() {
2531
initial={{ y: -32, opacity: 0 }}
2632
animate={{ y: 0, opacity: 1 }}
2733
transition={{ duration: 0.6, ease: 'easeOut' }}
28-
className={`fixed top-0 inset-x-0 z-50 transition-all duration-300 ${
29-
scrolled
30-
? 'backdrop-blur-md bg-bg/70 border-b border-border/60'
31-
: 'bg-transparent'
34+
className={`fixed top-0 inset-x-0 z-50 transition-colors duration-300 ${
35+
scrolled ? 'backdrop-blur-md bg-bg/80' : 'bg-transparent'
3236
}`}
3337
>
3438
<nav className="max-w-6xl mx-auto px-6 sm:px-8 h-16 flex items-center justify-between">

src/data/index.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ export const projects = [
9090
description: 'A cloud-based web search engine, built fully from scratch.',
9191
points: [
9292
'Built the distributed web crawler that fans out across EC2 workers, dedupes URLs against a custom KV store, and streams raw HTML downstream for indexing.',
93-
'Integrated with a from-scratch web server, key-value store, analytics engine, indexer, and PageRank pipeline — all stitched together to run across the cloud.',
9493
],
9594
},
9695
{
@@ -99,16 +98,14 @@ export const projects = [
9998
description: 'A complete UNIX-like operating system, built from scratch.',
10099
points: [
101100
'Priority-based process scheduler, FAT-style file system, and a custom shell with piping and job control.',
102-
'Implemented 20+ system calls using low-level signal handling, threading, and locks.',
103101
],
104102
},
105103
{
106104
name: 'Instalite',
107105
stack: ['AWS', 'JavaScript', 'React', 'Kubernetes'],
108106
description: 'A social media platform deployed across a Kubernetes cluster on AWS EC2.',
109107
points: [
110-
'S3 for media, RDS for structured user data, ChromaDB as a vector-based recommendation datastore.',
111-
'EMR + Apache Livy power social graph–based ranking; React serves the front-end.',
108+
'S3 for media, RDS for structured user data, ChromaDB for recommendations, EMR + Livy for social graph-based ranking, React for frontend.',
112109
],
113110
},
114111
];

0 commit comments

Comments
 (0)