Status: Foundation Complete, Awaiting Assets Date: January 22, 2026
GSAP + ScrollTrigger + Lenis
- ✅ Downloaded and integrated GSAP 3.12.5
- ✅ Added ScrollTrigger plugin for scroll-based animations
- ✅ Integrated Lenis smooth scroll library
- ✅ Created
motion-init.jswith comprehensive animation logic
Key Features:
- Hero section entrance animations
- Section reveal on scroll with clip-path effects
- Service card staggered animations with icon rotation
- Floating interests grid with parallax
- Scroll progress indicator
- Enhanced hover effects with GSAP
- Accessibility support (respects prefers-reduced-motion)
CSS Architecture (motion.css)
- ✅ Custom properties for colors, gradients, shadows
- ✅ Bold typography styles (Inter/Clash Display ready)
- ✅ Video background container styles
- ✅ Floating interests grid layout
- ✅ Enhanced service card styles with gradient borders
- ✅ Button animations with ripple effects
- ✅ Glassmorphism effects
- ✅ Scroll indicator with mouse animation
- ✅ GPU-accelerated performance optimizations
- ✅ Dark mode support
- ✅ Responsive design
New Homepage Section
- ✅ Added "Interests & Passions" section to index.html
- ✅ 5 interest cards: Chess, Longevity, Ethereum, Claude Code, Reading
- ✅ Fallback images in place (currently using skydiver.png as placeholder)
- ✅ Parallax and entrance animations configured
- ✅ Hover effects with 3D transforms
Complete Project Structure
Website/remotion-video/
├── package.json ✅ Dependencies configured
├── remotion.config.ts ✅ Remotion settings
├── tsconfig.json ✅ TypeScript config
├── README.md ✅ Documentation
└── src/
├── Root.tsx ✅ Remotion entry point
├── Composition.tsx ✅ Main composition (15s, 5 scenes)
└── scenes/
├── Opening.tsx ✅ Name reveal (0-3s)
├── Expertise.tsx ✅ TEEs/AI/Blockchain (3-6s)
├── Achievements.tsx ✅ Accomplishments (6-9s)
├── Interests.tsx ✅ 4-quadrant grid (9-12s)
└── Closing.tsx ✅ CTA with URL (12-15s)
Video Specifications:
- Duration: 15 seconds (450 frames at 30 fps)
- Resolution: 1920x1080
- Format: MP4 + WebM outputs
- Animations: Spring, interpolate, stagger reveals
- Brand Colors: Professional blue (#2563eb)
Directory Structure Created:
images/
└── motion/
├── README.md ✅ Asset guide for user
├── speaking/ ✅ Ready for photos
├── interests/ ✅ Ready for images
└── quotes/ ✅ Ready for JSON
videos/ ✅ Ready for rendered video
index.html
- ✅ Added Inter font (Google Fonts)
- ✅ Linked motion.css
- ✅ Added GSAP, ScrollTrigger, Lenis libraries
- ✅ Added motion-init.js
- ✅ Inserted floating interests grid section
Speaking Photos (Priority: HIGH)
Upload 3-5 high-resolution images to:
/Users/marko/Documents/GitHub/Markos Universe/images/motion/speaking/
Suggested naming:
stage-1.jpg- Conference presentationstage-2.jpg- Panel discussionstage-3.jpg- Keynote momentheadshot.jpg- Professional headshot
Requirements:
- Format: JPG or PNG
- Resolution: Minimum 1920x1080
- File size: Under 5MB each
- Good lighting and high contrast
Interest Images (Priority: MEDIUM)
Upload to: images/motion/interests/
chess.jpg- Chess imagerybooks.jpg- Reading/libraryethereum.png- Ethereum logoclaude.png- Claude Code brandinglongevity.jpg- Health/wellness
Quotes/Headlines (Priority: HIGH)
Create: images/motion/quotes/quotes.json
{
"personal": {
"motto": "Building the decentralized future",
"tagline": "TEEs • Agent Infrastructure • Privacy-Preserving Compute"
},
"achievements": [
"35.6K views on Forbes",
"Spoke at ETHDam 2024",
"Head of AI at Oasis Protocol"
],
"quotes": [
"Your favorite quote from a talk",
"Another impactful statement"
]
}Steps:
- Navigate to Remotion project:
cd "/Users/marko/Documents/GitHub/Markos Universe/Website/remotion-video"- Install dependencies:
npm install- Start Remotion Studio (preview):
npm start-
Customize scenes with your photos:
- Open
src/scenes/*.tsxfiles - Import photos from
public/assets/ - Adjust text content (achievements, quotes)
- Fine-tune animation timings
- Open
-
Render the video:
# MP4 format
npm run render
# WebM format (for web)
npm run render-webm- Compress for web (target: 2-3 MB):
ffmpeg -i out/video.mp4 -vcodec h264 -crf 28 -preset slower out/video-compressed.mp4- Copy to website:
cp out/video-compressed.mp4 "../videos/marko-highlight.mp4"
cp out/video.webm "../videos/marko-highlight.webm"Update index.html banner section:
Replace current banner content with video background:
<header id="banner" class="scrollto clearfix">
<!-- Video Background -->
<div class="hero-video-background">
<video autoplay muted loop playsinline>
<source src="videos/marko-highlight.webm" type="video/webm">
<source src="videos/marko-highlight.mp4" type="video/mp4">
</video>
<div class="hero-video-overlay"></div>
</div>
<!-- Navigation (existing code stays) -->
<div id="header" class="nav-collapse">
<!-- ... existing nav ... -->
</div>
<!-- Banner Content -->
<div id="banner-content" class="row clearfix">
<div class="col-38">
<div class="section-heading">
<h1>BLOCKCHAIN<br>& AI<br>CONSULTANT</h1>
<h2>TEEs • Agent Infrastructure • Privacy-Preserving Compute</h2>
</div>
<a href="mailto:marko.stokic@proton.me" class="button">LET'S TALK</a>
</div>
</div>
<!-- Scroll Indicator -->
<div class="scroll-indicator">
<div class="mouse-icon"></div>
<span>Explore</span>
</div>
</header>speaker.html updates needed:
- Add motion.css link
- Add GSAP libraries
- Add motion-init.js
- Enhanced video card styles
- Animated role badges
- Staggered metadata reveals
publications.html updates needed:
- Magazine-style layout (Hero + Grid or Timeline)
- Dark mode toggle (optional)
- Bold typography treatment
- Article hover animations
- Publication source badges with brand colors
Performance Checks:
- Lighthouse audit (target: >90)
- First Contentful Paint <1.5s
- Cumulative Layout Shift <0.1
- Video file size <3MB
- Cross-browser testing (Chrome, Safari, Firefox)
- Mobile responsive verification
Animation Polish:
- Smooth animations on scroll
- No jank on lower-end devices
- Reduced motion mode works
- Hover effects feel responsive
Right Now (10 minutes):
- Upload speaking photos to
images/motion/speaking/ - Upload interest images to
images/motion/interests/ - Create
images/motion/quotes/quotes.jsonwith your content - Test the current site locally:
cd "/Users/marko/Documents/GitHub/Markos Universe"
python3 -m http.server 8080Visit: http://localhost:8080
Next Session (1-2 hours):
- Set up Remotion project
- Customize video scenes with your photos
- Render and compress video
- Add video background to homepage hero
- Test and deploy
Later (2-3 hours):
- Enhance speaker.html
- Redesign publications.html
- Cross-browser testing
- Performance optimization
- Final deployment
Based on your preferences:
- ✅ Professional blue color palette (#2563eb)
- ✅ Homepage hero video placement only
- ✅ Bold aesthetics + rich animations priority
- ✅ Bold modern typography (Inter font ready)
CSS:
- Inter font (Google Fonts)
- motion.css (custom)
JavaScript:
- gsap.min.js (72 KB)
- ScrollTrigger.min.js (43 KB)
- lenis.min.js (11 KB)
- motion-init.js (custom)
Remotion (dev only):
- @remotion/cli ^4.0.0
- react ^18.3.0
- remotion ^4.0.0
Immediate:
- Provide assets (photos, quotes)
- Review current implementation locally
- Give feedback on animations and layout
Then: 4. Set up Remotion video 5. Integrate video into hero 6. Test and optimize 7. Deploy to production
Remotion Issues:
- Docs: https://www.remotion.dev/docs/
- Examples: https://www.remotion.dev/showcase
Animation Questions:
- GSAP Docs: https://greensock.com/docs/
- ScrollTrigger: https://greensock.com/docs/v3/Plugins/ScrollTrigger
General:
- Check browser console for errors
- Test in incognito mode to avoid cache issues
- Verify file paths are correct
Total Implementation Time So Far: ~2 hours Estimated Time to Complete: 3-4 hours (with assets) Total Project Time: 5-6 hours
Status: Ready for asset collection and video production! 🎬