cat case-studies/sajilo-digital.md
Sajilo Digital
- Next.js 16
- React 19
- TypeScript
- Tailwind v4
- GSAP
- Framer Motion
- pnpm
## the problem
Every IT company site in the region looks the same: stock hero, three service cards, a contact form. For a firm selling technical excellence, the site itself is the portfolio - it had to prove capability instead of claiming it.
I led architecture and frontend as CTO. The site doubles as our engineering showcase for clients who can't read code but can feel quality.
## screens
## constraints & tradeoffs
- Cinematic animation without wrecking performance - GSAP timelines are orchestrated and lazy-mounted per section.
- A real command terminal for navigation that never blocks normal point-and-click users.
- Modular, strictly-typed codebase the rest of the team can extend without touching animation internals.
## architecture
Next.js 16 App Router ├─ RSC pages ──► section registry (modular, typed) ├─ terminal layer ──► command parser ──► router / actions ├─ GSAP timelines (client islands, lazy-mounted) └─ telemetry feed ──► live project tracking widgets
## key decisions
Terminal as progressive enhancement
The command interface is a layer above conventional navigation, not a replacement. Every command has a clickable equivalent, so keyboard people get delight and everyone else never notices a barrier.
Animation islands over global timelines
Each section owns its GSAP context and cleans up on unmount. That kept scroll performance stable and let server components carry everything that doesn't move.
## results & lessons
- Shipped as the company's production site at sajilodigital.com.np.
- Became the reference codebase for how we structure client work: strict TypeScript, modular sections, pnpm workspace discipline.
- Lesson: 'cinematic' is an information hierarchy problem before it is an animation problem.
next
Roomeo →