Skip to content

Remove RocketJourney component and GSAP dependencies, refine Features…#39

Merged
igun997 merged 1 commit into
developfrom
feature/faqs
Dec 5, 2025
Merged

Remove RocketJourney component and GSAP dependencies, refine Features…#39
igun997 merged 1 commit into
developfrom
feature/faqs

Conversation

@igun997

@igun997 igun997 commented Dec 5, 2025

Copy link
Copy Markdown
Contributor

User description

… section content and styling, and update route documentation.


PR Type

Enhancement, Other


Description

  • Remove RocketJourney component and GSAP animation dependencies

  • Simplify Features section with refined content and improved styling

  • Add /register and /faqs routes to documentation

  • Reduce feature count from 5 to 3 core features with streamlined messaging


Diagram Walkthrough

flowchart LR
  A["RocketJourney Component"] -->|removed| B["Simplified Landing Page"]
  C["GSAP Dependencies"] -->|removed| D["Reduced Bundle Size"]
  E["5 Features Section"] -->|refactored to| F["3 Core Features"]
  G["Route Documentation"] -->|updated with| H["Register & FAQs Routes"]
  B --> I["Enhanced User Experience"]
  D --> I
  F --> I
Loading

File Walkthrough

Relevant files
Documentation
CLAUDE.md
Add register and FAQs routes documentation                             

CLAUDE.md

  • Added /register route for user registration page
  • Added /faqs route for frequently asked questions page
  • Updated route documentation to reflect new pages
+2/-0     
Dependencies
package.json
Remove GSAP animation dependencies                                             

package.json

  • Removed @gsap/react dependency (v2.1.2)
  • Removed gsap dependency (v3.13.0)
  • Reduced overall bundle size by eliminating animation library
+0/-2     
Enhancement
page.tsx
Remove RocketJourney component from landing                           

src/app/page.tsx

  • Removed import of RocketJourney component
  • Removed entire RocketJourney section with gradient background
  • Simplified landing page structure by removing intermediate section
+0/-7     
Features.tsx
Simplify Features section to 3 core features                         

src/components/landing/Features.tsx

  • Removed 4th feature (NFT Collectible) and 5th feature (Web3 Support)
  • Reduced from 5 features to 3 core features (Analytics, Scanning,
    Blockchain Security)
  • Removed unused icon imports (ChevronRight, Gem, HeadphonesIcon)
  • Removed Button and Link component imports
  • Simplified feature descriptions and reduced bullet points per feature
  • Adjusted spacing and typography (reduced padding, margins, and font
    sizes)
  • Reduced image heights from 240-320px to 200-260px
  • Changed hover scale effect from 1.05 to 1.02 for subtler interaction
  • Refined shadow effects from shadow-2xl to shadow-xl
  • Updated feature badge labels and descriptions for clarity
+70/-220
RocketJourney.tsx
Remove entire RocketJourney component file                             

src/components/landing/RocketJourney.tsx

  • Completely removed entire RocketJourney component file (607 lines)
  • Eliminated GSAP ScrollTrigger animations and scroll-based interactions
  • Removed interactive rocket journey visualization with 7 steps
  • Removed starfield background and moon destination animations
+0/-607 

… section content and styling, and update route documentation.
@qodo-code-review

Copy link
Copy Markdown
Contributor

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status:
No audit logs: The new UI components add/modify presentation logic only and introduce no logging of
critical actions, but since no critical actions are present in the added code, it's
unclear if audit logging is applicable here.

Referred Code
<section className="relative z-10 py-16 sm:py-24 space-y-16">
  {/* Feature 1 - Analytics */}
  <div className="container mx-auto px-4 sm:px-6">
    <div className="grid lg:grid-cols-2 gap-10 lg:gap-16 items-center">
      <MotionDiv
        className="order-2 lg:order-1 relative"
        initial={{ opacity: 0, x: -50 }}
        whileInView={{ opacity: 1, x: 0 }}
        viewport={{ once: true }}
        transition={{ duration: 0.6 }}
      >
        <div className="absolute inset-0 bg-linear-to-br from-[#2B4C7E]/30 to-[#1E3A5F]/20 rounded-3xl transform rotate-3 scale-95 blur-2xl" />
        <div className="relative bg-white border-2 border-[#2B4C7E]/20 rounded-2xl shadow-xl overflow-hidden p-2">
          <div className="bg-white rounded-xl p-4 h-[200px] sm:h-[260px] flex items-center justify-center border border-[#A8A8A8]/20">
            <Image
              src="/feature-analytics.png"
              alt="Real-time Analytics Dashboard"
              width={400}
              height={400}
              className="w-full h-auto object-contain max-h-full"
            />


 ... (clipped 169 lines)

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status:
No error handling: The added UI logic (animations, rendering lists, images) includes no explicit error
handling for potential failures (e.g., image load errors), which might be acceptable for
static landing content but cannot be confirmed from this diff alone.

Referred Code
  <div className="relative bg-white border-2 border-[#2B4C7E]/20 rounded-2xl shadow-xl overflow-hidden p-2">
    <div className="bg-white rounded-xl p-4 h-[200px] sm:h-[260px] flex items-center justify-center border border-[#A8A8A8]/20">
      <Image
        src="/feature-analytics.png"
        alt="Real-time Analytics Dashboard"
        width={400}
        height={400}
        className="w-full h-auto object-contain max-h-full"
      />
    </div>
  </div>
</MotionDiv>
<MotionDiv
  className="order-1 lg:order-2"
  initial={{ opacity: 0, x: 50 }}
  whileInView={{ opacity: 1, x: 0 }}
  viewport={{ once: true }}
  transition={{ duration: 0.6 }}
>
  <div className="inline-flex items-center rounded-full bg-[#2B4C7E]/10 px-4 py-1.5 text-sm font-semibold text-[#0C2340] mb-4 border border-[#2B4C7E]/20">
    <Zap className="mr-2 h-4 w-4 text-[#2B4C7E]" />


 ... (clipped 86 lines)

Learn more about managing compliance generic rules or creating your own custom rules

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@igun997 igun997 merged commit 8883985 into develop Dec 5, 2025
4 checks passed
@qodo-code-review

Copy link
Copy Markdown
Contributor

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
General
Use stable keys for list items

In the list of features, change the React key for the motion.li component from
the array index i to the item string itself. This ensures a stable and unique
key, following React best practices.

src/components/landing/Features.tsx [94-108]

 <ul className="space-y-3">
   {['Verifikasi instan', 'Tanpa download'].map((item, i) => (
      <motion.li
-       key={i}
+       key={item}
        className="flex items-center text-[#0C2340]"
        initial={{ opacity: 0, x: -20 }}
        whileInView={{ opacity: 1, x: 0 }}
        viewport={{ once: true }}
        transition={{ delay: i * 0.1 }}
      >
        <CheckCircle2 className="h-5 w-5 text-[#2B4C7E] mr-3 shrink-0" />
        <span className="font-medium">{item}</span>
      </motion.li>
    ))}
 </ul>
  • Apply / Chat
Suggestion importance[1-10]: 4

__

Why: The suggestion correctly identifies the use of an array index as a React key and proposes using a stable string identifier, which is a best practice for list rendering, although the impact is minor for a static list.

Low
  • More

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant