-
Notifications
You must be signed in to change notification settings - Fork 24
Add Static Marketing Website with Deep Linking Support #5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Add Static Marketing Website with Deep Linking Support #5
Conversation
- Minimalistic green theme design (#10B981) - Responsive hero, features, and screenshot sections - Android assetlinks.json for deep linking - Pure HTML/CSS/JS (no build step) - Generated placeholder assets (logo, mockups, illustrations) - Comprehensive deployment documentation Closes #[ISSUE_NUMBER]
WalkthroughA comprehensive new website structure for Zplit has been added under the Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (3)
website/README.md (1)
7-19: Add language identifier to the fenced code block.The directory tree structure would benefit from a language identifier for consistent rendering across Markdown viewers.
Apply this diff:
-``` +```text website/ ├── index.html # Main landing page ├── .well-known/website/js/main.js (2)
9-29: Consider accounting for sticky header offset in smooth scroll.The smooth scroll implementation works well but doesn't account for the sticky navigation header. Content scrolled to may be partially hidden behind the fixed header.
Consider adjusting the scroll position to account for the header height:
if (targetElement) { e.preventDefault(); + const navHeight = document.querySelector('.nav')?.offsetHeight || 0; + const targetPosition = targetElement.offsetTop - navHeight; + window.scrollTo({ + top: targetPosition, + behavior: 'smooth' + }); - targetElement.scrollIntoView({ - behavior: 'smooth', - block: 'start' - }); }
62-76: Add null check for nav element.The code queries for
.navbut doesn't verify it exists before accessing it in the scroll event handler. While this works when the element exists, adding defensive checks improves robustness.Consider adding a null check:
let lastScrollTop = 0; const nav = document.querySelector('.nav'); -window.addEventListener('scroll', () => { +if (nav) { + window.addEventListener('scroll', () => { const scrollTop = window.pageYOffset || document.documentElement.scrollTop; // Add shadow when scrolled if (scrollTop > 50) { nav.style.boxShadow = '0 2px 8px rgba(0, 0, 0, 0.1)'; } else { nav.style.boxShadow = 'none'; } lastScrollTop = scrollTop; -}); + }); +}Note: The
lastScrollTopvariable is assigned but never used. If it's for a future hide/show navbar feature, consider adding a comment to clarify intent.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (4)
website/assets/images/app-mockup.pngis excluded by!**/*.pngwebsite/assets/images/hero-illustration.pngis excluded by!**/*.pngwebsite/assets/images/stability-logo.svgis excluded by!**/*.svgwebsite/assets/images/zplit-logo.pngis excluded by!**/*.png
📒 Files selected for processing (5)
website/.well-known/assetlinks.json(1 hunks)website/README.md(1 hunks)website/css/styles.css(1 hunks)website/index.html(1 hunks)website/js/main.js(1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
website/README.md
7-7: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (4)
website/css/styles.css (1)
1-596: LGTM! Well-structured stylesheet with solid design system foundation.The CSS implementation demonstrates good practices:
- Clear design token organization with CSS custom properties
- Semantic class naming conventions
- Responsive design with appropriate breakpoints
- Smooth animations using modern CSS
- Good component isolation and reusability
The stylesheet provides a solid foundation for the marketing website with maintainable, scalable code.
website/index.html (2)
1-33: Excellent SEO and social media metadata implementation.The head section includes comprehensive meta tags covering:
- Proper viewport configuration for mobile responsiveness
- Descriptive SEO metadata
- Open Graph tags for social sharing
- Twitter Card configuration
- Optimized font loading with preconnect
This provides a solid foundation for search engine visibility and social media sharing.
36-255: Strong semantic HTML structure with good accessibility foundation.The page structure demonstrates solid web standards:
- Semantic HTML5 elements (nav, section, footer)
- Proper heading hierarchy (h1 → h2 → h3)
- Alt text for images (though verify these are descriptive enough for screen readers)
- Clear content organization with meaningful sections
- Accessible link text (avoiding generic "click here")
This provides a good foundation for accessibility and SEO.
website/js/main.js (1)
34-57: Excellent use of IntersectionObserver for performant animations.The fade-in animation implementation uses IntersectionObserver, which is the modern, performant approach for viewport-based animations. The configuration with threshold and rootMargin provides a smooth user experience.
|
Team Name: Dev Engers Team Members:
|
Add Static Marketing Website with Deep Linking Support
Problem
Zplit needs a static website to:
.well-known/assetlinks.jsonfor Android App Links (deep linking)Currently, there is no website to showcase the project or enable deep linking functionality.
Solution
Created a minimalistic static marketing website with:
Design
Sections
Technical Features
.well-known/assetlinks.json)Visual Preview
Generated Assets
Zplit Logo (Placeholder)

Hero Illustration

App Mockup Placeholder

Website Demo
Full Website Walkthrough (Video)
Zplit-recording.mp4
Files Changed
How to Test
Verify:
.well-known/assetlinks.jsonis accessibleDeployment
See
website/README.mdfor detailed deployment options:Deep Linking Setup
After deployment, update
assetlinks.json:Generate SHA256 fingerprint:
Replace
PLACEHOLDER_REPLACE_WITH_ACTUAL_SHA256_FINGERPRINTinassetlinks.jsonVerify with Google's Digital Asset Links tool
Checklist
website/README.md)Related Issues
Related to #2 (Design guidelines)
Ready for review! 🚀
Summary by CodeRabbit
Release Notes
New Features
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.