Skip to content

Dev#135

Merged
afsar-dev merged 3 commits intomainfrom
dev
Nov 25, 2025
Merged

Dev#135
afsar-dev merged 3 commits intomainfrom
dev

Conversation

@afsar-dev
Copy link
Owner

@afsar-dev afsar-dev commented Nov 25, 2025

Summary by CodeRabbit

  • New Features
    • Added interactive globe-to-map visualization component with drag rotation and projection morphing.
    • Added 3D rotating Earth visualization with interactive pan and zoom controls.
    • Added footer component with animated rocket scroll-to-top functionality.
    • Testimonial components now support dynamic ratings display.
    • Enhanced image optimization with automatic format selection and responsive sizing.

✏️ Tip: You can customize this high-level summary in your review settings.

…ity effect

feat: Implement ButtonsMarquee component showcasing various button animations

feat: Create ComponentDemosSection to display multiple component demos with descriptions

feat: Develop HeroSection with gradient text, features, and user testimonials

feat: Add MarqueeTestimonialSection for displaying user testimonials in a marquee format

feat: Introduce testimonial data for user feedback display

feat: Implement cloudinaryLoader for optimized image loading from Cloudinary

feat: Add AnalyticsProvider for Vercel analytics integration
@vercel
Copy link

vercel bot commented Nov 25, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
nurui Building Building Preview Comment Nov 25, 2025 0:40am

@afsar-dev afsar-dev merged commit 773d96f into main Nov 25, 2025
1 of 4 checks passed
@coderabbitai
Copy link

coderabbitai bot commented Nov 25, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

The pull request introduces three new visualization components (glob-map, rocket-footer, rotating-earth) with D3 and interactive canvas rendering, renames counter-loading to counter-loader, refactors component exports from named to default exports, enables Cloudinary image optimization, adds D3 and topojson dependencies, reorganizes navigation hierarchy, and updates layout components and documentation.

Changes

Cohort / File(s) Change Summary
Export Pattern Refactoring
public/r/animated-list.json, public/r/animated-pricing.json, public/r/creative-pricing.json, public/r/following-eye.json
Changed export style from named exports to default exports for demo components; no behavioral changes.
Component Renaming
public/r/counter-loader.json, public/r/counter-loading.json
Renamed counter-loading to counter-loader; updated file paths and registry references from counter-loading.tsx to counter-loader.tsx.
File Path Updates
public/r/marquee-testimonial.json, public/r/news-letter.json
Updated references from marque.tsx to marquee.tsx and from animate-Input.tsx to animated-input.tsx; added rating prop to testimonial components.
New Globe Visualization
public/r/glob-map.json, src/components/nurui/glob-map.tsx, src/components/nurui/glob-map-demo.tsx
Introduced interactive globe-to-map D3 visualization with drag-to-rotate, zoom, and projection interpolation between orthographic and equirectangular projections.
New Footer with Scroll-to-Top
public/r/rocket-footer.json, src/components/nurui/rocket-footer.tsx, src/components/nurui/rocket-scroll-to-top.tsx, src/components/nurui/nurui-logo.tsx, src/components/nurui/rocket-footer-demo.tsx, src/components/nurui/styles/footer.css
Added rocket-themed footer component with scroll-to-top animation, multi-column layout, and navigation state tracking.
New Rotating Earth Visualization
public/r/rotating-earth.json, src/components/nurui/rotating-earth.tsx, src/components/nurui/rotating-earth-demo.tsx
Introduced canvas-based rotating globe using D3 orthographic projection with auto-rotation, drag/zoom interactions, and halftone land dot rendering.
Registry & Navigation Updates
public/r/registry.json, registry.json, registry-cli.json, src/registry/component-navigation.tsx, src/registry/components-registry.tsx
Added new 3D section with glob-map and rotating-earth; renamed counter-loading to counter-loader; extended footer submenu with rocket-footer entry.
Configuration & Dependencies
.env.example, next.config.ts, package.json
Added d3 and topojson-client dependencies; enabled custom Cloudinary image loader; expanded image optimization formats (avif, webp), deviceSizes, imageSizes, and minimumCacheTTL; enabled console removal in production.
Image Loading & Analytics
src/lib/cloudinaryLoader.ts, src/provider/AnalyticsProvider.tsx, src/components/common/AnimatedTooltip.tsx
Introduced Cloudinary loader utility for custom image optimization; added conditional Vercel Analytics provider; integrated cloudinaryLoader in AnimatedTooltip.
Layout & Navigation Components
src/app/layout.tsx, src/components/layout/Footer.tsx, src/components/layout/Navbar.tsx, src/components/layout/components-layout/ComponentsLeftSidebar.tsx, src/components/common/Nurui.tsx
Updated layout to use VercelAnalytics instead of Analytics; replaced direct icon imports with RocketScrollToTop and RocketFooter; changed badge label from "Beta" to "Basic"; updated NuruiLogo import path.
Page & Demo Components
src/app/page.tsx, src/app/preview/[component]/components-preview-registry.tsx, src/components/pages/home/HeroSection.tsx, src/components/pages/home/AllTechnologySection.tsx, src/components/pages/Home/AllTechnologySection.tsx
Updated import paths to lowercase "home"; added dynamic imports for rocket-footer, glob-map, and rotating-earth; refactored HeroSection with feature array and RatingStars integration; relocated AllTechnologySection file.
Testimonial Components & Data
src/components/nurui/testimonial-card.tsx, src/components/nurui/rating-star.tsx, src/components/nurui/marquee-testimonial-demo.tsx, src/components/pages/home/MarqueeTestimonialSection.tsx, src/data/testimonial.data.ts
Updated RatingStars to accept dynamic rating prop; added rating prop to TestimonialCard; updated data import path and normalized testimonial ratings to 5.0.
Documentation
src/content/docs/counter-loader.mdx, src/content/docs/glob-map.mdx, src/content/docs/rocket-footer.mdx, src/content/docs/rotating-earth.mdx, src/content/docs/hacker-cursor.mdx
Added documentation for new components (glob-map, rocket-footer, rotating-earth); updated counter-loader doc; minor table header adjustment in hacker-cursor.
Cosmetic/Formatting
public/r/border-button.json, public/r/neobrutalism-faq.json, public/r/play-button.json, public/r/ripple-loader.json
Normalized line endings from CRLF to LF; no functional changes.
Site Configuration
src/config/site.ts
Updated siteName constant from "Nur UI" to "Nur/ui".

Sequence Diagram

sequenceDiagram
    participant User
    participant GlobeToMapTransform
    participant D3 as D3 Library
    participant CDN as World Data CDN
    
    Note over User,CDN: Globe-to-Map Visualization Flow
    User->>GlobeToMapTransform: Interact (drag/scroll)
    GlobeToMapTransform->>D3: Update rotation/zoom state
    D3->>GlobeToMapTransform: Render updated projection
    GlobeToMapTransform->>User: Display rotated globe/map
    
    User->>GlobeToMapTransform: Click "Unroll Globe"
    GlobeToMapTransform->>GlobeToMapTransform: Start animation (progress 0→100)
    loop Animation Frame
        GlobeToMapTransform->>D3: interpolateProjection(progress)
        D3->>GlobeToMapTransform: Morphed projection
        GlobeToMapTransform->>User: Animate globe↔map transition
    end
    
    rect rgba(100, 150, 255, 0.2)
        Note over GlobeToMapTransform,CDN: Initial Mount
        GlobeToMapTransform->>CDN: Fetch world-atlas data
        CDN-->>GlobeToMapTransform: GeoJSON features
        GlobeToMapTransform->>GlobeToMapTransform: Parse & render land features
    end
Loading
sequenceDiagram
    participant User
    participant RocketScrollToTop
    participant Browser as Window/DOM
    
    Note over User,Browser: Rocket Scroll-to-Top Flow
    User->>Browser: Scroll down page
    Browser->>RocketScrollToTop: Visibility check
    RocketScrollToTop->>User: Show rocket button
    
    User->>RocketScrollToTop: Click rocket button
    RocketScrollToTop->>RocketScrollToTop: Trigger shake animation
    rect rgba(255, 150, 100, 0.2)
        Note over RocketScrollToTop: Launch Phase
        RocketScrollToTop->>RocketScrollToTop: Apply flyAnimation
        RocketScrollToTop->>Browser: requestAnimationFrame loop
        Browser->>Browser: window.scrollTo(top, smooth)
    end
    Browser->>User: Scroll to top completed
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Areas requiring extra attention:

  • src/components/nurui/rotating-earth.tsx — Complex canvas-based D3 visualization with point-in-polygon logic, multiple interaction handlers (drag, wheel zoom), and responsive sizing; verify data loading error handling and memory cleanup on unmount.
  • src/components/nurui/glob-map.tsx — Interactive globe-to-map projection morphing with custom interpolation function; ensure CDN fallback works and drag/animation state transitions are correct.
  • src/components/nurui/styles/footer.css — Intricate keyframe animations (rocketShake, flyAnimation) with state-dependent styling; verify animation timing and cross-browser compatibility.
  • Registry and navigation reorganization — Multiple registry files and component navigation updated; verify all dynamic imports and registry entries are correctly aligned.
  • Export pattern refactoring — Multiple components switched from named to default exports; ensure all import sites (registry, layout components) are correctly updated.
  • Image loader integration — Cloudinary loader added to AnimatedTooltip and next.config.ts; verify image optimization doesn't break existing image rendering.

Possibly related PRs

Poem

🚀 New globes spin and footers soar,
Components default-export'd with care,
D3 magic paints the 3D floor,
Cloudinary images load so fair,
The rabbit hops through manifests anew! 🐰

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dev

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5614eb2 and 5264474.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (54)
  • .env.example (1 hunks)
  • next.config.ts (2 hunks)
  • package.json (4 hunks)
  • public/r/animated-list.json (1 hunks)
  • public/r/animated-pricing.json (1 hunks)
  • public/r/border-button.json (1 hunks)
  • public/r/counter-loader.json (1 hunks)
  • public/r/counter-loading.json (1 hunks)
  • public/r/creative-pricing.json (1 hunks)
  • public/r/following-eye.json (1 hunks)
  • public/r/glob-map.json (1 hunks)
  • public/r/marquee-testimonial.json (1 hunks)
  • public/r/neobrutalism-faq.json (1 hunks)
  • public/r/news-letter.json (1 hunks)
  • public/r/play-button.json (1 hunks)
  • public/r/registry.json (5 hunks)
  • public/r/ripple-loader.json (1 hunks)
  • public/r/rocket-footer.json (1 hunks)
  • public/r/rotating-earth.json (1 hunks)
  • registry-cli.json (6 hunks)
  • registry.json (5 hunks)
  • src/app/layout.tsx (2 hunks)
  • src/app/page.tsx (1 hunks)
  • src/app/preview/[component]/components-preview-registry.tsx (3 hunks)
  • src/components/common/AnimatedTooltip.tsx (2 hunks)
  • src/components/common/Nurui.tsx (1 hunks)
  • src/components/layout/Footer.tsx (1 hunks)
  • src/components/layout/Navbar.tsx (2 hunks)
  • src/components/layout/components-layout/ComponentsLeftSidebar.tsx (2 hunks)
  • src/components/nurui/glob-map-demo.tsx (1 hunks)
  • src/components/nurui/glob-map.tsx (1 hunks)
  • src/components/nurui/marquee-testimonial-demo.tsx (3 hunks)
  • src/components/nurui/rating-star.tsx (1 hunks)
  • src/components/nurui/rocket-footer-demo.tsx (1 hunks)
  • src/components/nurui/rocket-footer.tsx (1 hunks)
  • src/components/nurui/rotating-earth-demo.tsx (1 hunks)
  • src/components/nurui/rotating-earth.tsx (1 hunks)
  • src/components/nurui/styles/footer.css (1 hunks)
  • src/components/nurui/testimonial-card.tsx (3 hunks)
  • src/components/pages/Home/AllTechnologySection.tsx (0 hunks)
  • src/components/pages/home/AllTechnologySection.tsx (1 hunks)
  • src/components/pages/home/HeroSection.tsx (3 hunks)
  • src/components/pages/home/MarqueeTestimonialSection.tsx (3 hunks)
  • src/config/site.ts (1 hunks)
  • src/content/docs/counter-loader.mdx (2 hunks)
  • src/content/docs/glob-map.mdx (1 hunks)
  • src/content/docs/hacker-cursor.mdx (1 hunks)
  • src/content/docs/rocket-footer.mdx (1 hunks)
  • src/content/docs/rotating-earth.mdx (1 hunks)
  • src/data/testimonial.data.ts (3 hunks)
  • src/lib/cloudinaryLoader.ts (1 hunks)
  • src/provider/AnalyticsProvider.tsx (1 hunks)
  • src/registry/component-navigation.tsx (3 hunks)
  • src/registry/components-registry.tsx (2 hunks)

Tip

📝 Customizable high-level summaries are now available in beta!

You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.

  • Provide your own instructions using the high_level_summary_instructions setting.
  • Format the summary however you like (bullet lists, tables, multi-section layouts, contributor stats, etc.).
  • Use high_level_summary_in_walkthrough to move the summary from the description to the walkthrough section.

Example instruction:

"Divide the high-level summary into five sections:

  1. 📝 Description — Summarize the main change in 50–60 words, explaining what was done.
  2. 📓 References — List relevant issues, discussions, documentation, or related PRs.
  3. 📦 Dependencies & Requirements — Mention any new/updated dependencies, environment variable changes, or configuration updates.
  4. 📊 Contributor Summary — Include a Markdown table showing contributions:
    | Contributor | Lines Added | Lines Removed | Files Changed |
  5. ✔️ Additional Notes — Add any extra reviewer context.
    Keep each section concise (under 200 words) and use bullet or numbered lists for clarity."

Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant