Skip to content

style: update brand assets#32

Open
kasuncfdo wants to merge 14 commits intomainfrom
kasun/update-branding
Open

style: update brand assets#32
kasuncfdo wants to merge 14 commits intomainfrom
kasun/update-branding

Conversation

@kasuncfdo
Copy link
Copy Markdown
Collaborator

@kasuncfdo kasuncfdo commented Jul 15, 2025

PR Type

Other


Description

  • Updated Bitcoin brand color from #f90 to #f7901a

  • Replaced card images with new brand assets

  • Updated logo images to new brand files

  • Modified gradient colors for consistency


Changes diagram

flowchart LR
  A["Color Updates"] --> B["Bitcoin Color #f7901a"]
  C["Image Assets"] --> D["Card Images"]
  C --> E["Logo Images"]
  B --> F["Updated Gradient"]
Loading

Changes walkthrough 📝

Relevant files
Configuration changes
tailwind.config.ts
Update Bitcoin brand colors                                                           

tailwind.config.ts

  • Updated bitcoin default color from #f90 to #f7901a
  • Modified bitcoin-gradient background color to #f89319
  • +2/-2     
    Enhancement
    bitcoin-card.tsx
    Update card image assets                                                                 

    src/components/bitcoin-card.tsx

  • Replaced card front image from card-front.png to bdfcard.png
  • Replaced card back image from card-back.png to bdbcard.png
  • Minor text formatting adjustments
  • +6/-6     
    hero.tsx
    Update hero logo image                                                                     

    src/components/hero.tsx

  • Replaced logo image from bitcoindeepa-logo.png to brand/Yaka.png
  • Added object-contain class for better image scaling
  • +2/-2     
    navbar.tsx
    Update navbar logo and styling                                                     

    src/components/navbar.tsx

  • Replaced navbar logo from bitcoindeepa-h-logo.svg to
    brand/DeepaLogo_WnO.png
  • Adjusted logo height from h-8 to h-9
  • Minor code formatting improvements
  • +6/-3     

    Need help?
  • Type /help how to ... in the comments thread for any questions about Qodo Merge usage.
  • Check out the documentation for more information.
  • Summary by CodeRabbit

    • Style

      • Updated images across the Bitcoin card, hero, navbar, and footer for consistent branding and improved appearance.
      • Adjusted logo sizing and image display for better fit.
      • Refined bitcoin color palette and gradient for a more precise look.
      • Minor text punctuation and formatting tweaks in UI copy.
    • Chores

      • Updated timestamp to reflect the latest build date.

    @vercel
    Copy link
    Copy Markdown

    vercel bot commented Jul 15, 2025

    @kasuncfdo is attempting to deploy a commit to the CeyLabs Projects team on Vercel, but is not a member of this team. To resolve this issue, you can:

    • Make your repository public. Collaboration is free for open source and public repositories.
    • Add @kasuncfdo as a member. A Pro subscription is required to access Vercel's collaborative features.
      • If you're the owner of the team, click here and add @kasuncfdo as a member.
      • If you're the user who initiated this build request, click here to request access.
      • If you're already a member of the CeyLabs Projects team, make sure that your Vercel account is connected to your GitHub account.

    To read more about collaboration on Vercel, click here.

    @coderabbitai
    Copy link
    Copy Markdown

    coderabbitai bot commented Jul 15, 2025

    Walkthrough

    Image sources and styling were updated across UI components (bitcoin card, hero, navbar, footer), Tailwind bitcoin colors/gradient were adjusted, and the timestamp file was updated. No logic or control-flow changes were made.

    Changes

    Cohort / File(s) Change Summary
    Bitcoin Card Component
    src/components/bitcoin-card.tsx
    Replaced card front/back image paths (/images/card-front.png/images/bdfcard.png, /images/card-back.png/images/bdbcard.png); converted some strings to template literals to accommodate apostrophes.
    Hero Component
    src/components/hero.tsx
    Swapped hero logo image source (/images/bitcoindeepa-logo.png/images/brand/Yaka.png); added object-contain to image classes.
    Navbar Component
    src/components/navbar.tsx
    Updated navbar logo path (/images/bitcoindeepa-h-logo.svg/images/brand/DeepaLogo_WnO.svg); increased logo height class (h-8h-9); replaced inline style with Tailwind utilities (w-fit m-auto); changed single- to double-quoted strings in fbEvent calls.
    Footer Component
    src/components/footer.tsx
    Replaced footer logo path (/images/bitcoindeepa-logo.svg/images/brand/Yaka.png).
    Tailwind Configuration
    tailwind.config.ts
    Adjusted bitcoin default color (#f90#f7901a) and updated bitcoin-gradient second stop (#ffb84d#f89319).
    Timestamp File
    timestamp.txt
    Updated last-updated timestamp value.

    Estimated code review effort

    🎯 2 (Simple) | ⏱️ ~10 minutes

    Poem

    I’m a rabbit with a keen design eye, 🥕
    New logos hop in and colors comply.
    Cards and headers shimmer bright and new,
    A tiny timestamp nods—revision true.
    Cheers from my burrow, branding hop-through! 🐇✨


    📜 Recent review details

    Configuration used: CodeRabbit UI
    Review profile: CHILL
    Plan: Free

    💡 Knowledge Base configuration:

    • Jira integration is disabled
    • Linear integration is disabled

    You can enable these sources in your CodeRabbit configuration.

    📥 Commits

    Reviewing files that changed from the base of the PR and between bcb0c29 and 0b97c53.

    📒 Files selected for processing (1)
    • timestamp.txt (1 hunks)
    ✅ Files skipped from review due to trivial changes (1)
    • timestamp.txt

    Note

    🎁 Summarized by CodeRabbit Free

    Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

    🪧 Tips

    Chat

    There are 3 ways to chat with CodeRabbit:

    • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
      • I pushed a fix in commit <commit_id>, please review it.
      • Open a follow-up GitHub issue for this discussion.
    • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
    • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
      • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
      • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

    Support

    Need help? Join our Discord community for assistance with any issues or questions.

    CodeRabbit Commands (Invoked using PR/Issue comments)

    Type @coderabbitai help to get the list of available commands.

    Other keywords and placeholders

    • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
    • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
    • Add @coderabbitai anywhere in the PR title to generate the title automatically.

    CodeRabbit Configuration File (.coderabbit.yaml)

    • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
    • Please see the configuration documentation for more information.
    • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

    Status, Documentation and Community

    • Visit our Status Page to check the current availability of CodeRabbit.
    • Visit our Documentation for detailed information on how to use CodeRabbit.
    • Join our Discord Community to get help, request features, and share feedback.
    • Follow us on X/Twitter for updates and announcements.

    @vercel
    Copy link
    Copy Markdown

    vercel bot commented Jul 15, 2025

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

    Project Deployment Preview Comments Updated (UTC)
    bitcoin-deepa Ready Ready Preview Comment Aug 18, 2025 6:14pm

    @qodo-code-review
    Copy link
    Copy Markdown

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Color Inconsistency

    The bitcoin gradient uses #f90 as the first color but the bitcoin DEFAULT color is now #f7901a. This creates inconsistency in the brand color usage across the gradient.

      "bitcoin-gradient": "linear-gradient(to right, #f90, #f89319)",
    },
    Missing Assets

    The code references new image files bdfcard.png and bdbcard.png but there's no indication these assets exist in the repository. This could cause broken images if the files are missing.

                      src="/images/bdfcard.png"
                      alt="Bitcoin Deepa Card Front"
                      width={400}
                      height={250}
                      className="w-full h-full object-cover"
                    />
                  </div>
                </div>
              </div>
    
              <div className="bg-zinc-800 rounded-2xl p-6">
                <h3 className="text-bitcoin text-xl font-medium mb-4">
                  How It Works
                </h3>
                <ul className="space-y-4">
                  {HOW_IT_WORKS_STEPS.map((step, idx) => (
                    <li className="flex items-start" key={idx}>
                      <div className="h-6 w-6 rounded-full bg-bitcoin/20 flex items-center justify-center mt-0.5 mr-3 flex-shrink-0">
                        <div className="h-2 w-2 rounded-full bg-bitcoin" />
                      </div>
                      <span className="text-gray-300">{step}</span>
                    </li>
                  ))}
                </ul>
              </div>
    
              <div className="mt-8 flex justify-center">
                <GradientButton className="px-8 py-3 text-lg" disabled>
                  Coming Soon
                </GradientButton>
              </div>
            </div>
          </DialogContent>
        </Dialog>
      );
    };
    
    export default function BitcoinCard() {
      const [isFlipped, setIsFlipped] = useState(false);
    
      const cardRef = useRef<HTMLDivElement>(null);
      const sectionRef = useRef<HTMLDivElement>(null);
    
      const x = useMotionValue(0);
      const y = useMotionValue(0);
    
      const isInView = useInView(sectionRef, { once: false, amount: 0.3 });
    
      const rotateX = useSpring(useTransform(y, [-300, 300], [15, -15]), {
        stiffness: 150,
        damping: 20,
      });
      const rotateY = useSpring(useTransform(x, [-300, 300], [-15, 15]), {
        stiffness: 150,
        damping: 20,
      });
    
      const glareX = useTransform(x, [-300, 300], ["-20%", "120%"]);
      const glareY = useTransform(y, [-300, 300], ["-20%", "120%"]);
    
      const { scrollYProgress } = useScroll({
        target: sectionRef,
        offset: ["start end", "end start"],
      });
    
      const cardScale = useTransform(scrollYProgress, [0.1, 0.4], [0.6, 1]);
      const cardOpacity = useTransform(scrollYProgress, [0.1, 0.4], [0, 1]);
      const cardY = useTransform(scrollYProgress, [0.1, 0.4], [-100, 0]);
      const cardRotateX = useTransform(scrollYProgress, [0.1, 0.4], [45, 0]);
    
      const handleMouseMove = (event: React.MouseEvent<HTMLDivElement>) => {
        if (!cardRef.current) return;
    
        const rect = cardRef.current.getBoundingClientRect();
        const centerX = rect.left + rect.width / 2;
        const centerY = rect.top + rect.height / 2;
    
        x.set(event.clientX - centerX);
        y.set(event.clientY - centerY);
      };
    
      const handleMouseLeave = () => {
        x.set(0);
        y.set(0);
      };
    
      const handleCardClick = () => {
        setIsFlipped(!isFlipped);
      };
    
      return (
        <section
          ref={sectionRef}
          className="py-20 md:py-32 relative overflow-hidden min-h-[80vh] flex items-center"
        >
          <div className="absolute inset-0 opacity-10 pointer-events-none">
            <LightningPattern />
          </div>
    
          <div className="container mx-auto px-6 relative">
            <div className="flex flex-col lg:flex-row items-center gap-16">
              {/* Content Section */}
              <div className="flex-1 text-center lg:text-left">
                <motion.div
                  initial={{ opacity: 0, y: 20 }}
                  animate={{ opacity: isInView ? 1 : 0, y: isInView ? 0 : 20 }}
                  transition={{ duration: 0.5, delay: 0.2 }}
                >
                  <h2 className="text-3xl md:text-4xl lg:text-5xl font-bold mb-6">
                    <span className="text-white">Get Your</span>
                    <span className="block text-bitcoin mt-2">
                      <BrandName /> Card Today
                    </span>
                  </h2>
                  <p className="text-gray-400 text-lg mb-6">
                    Experience the future of payments with our contactless Lightning
                    Network Bolt Card.
                  </p>
    
                  <ul className="space-y-4 mb-8 text-left max-w-lg mx-auto lg:mx-0">
                    {CARD_FEATURES.map((feature, index) => (
                      <FeatureItem
                        key={index}
                        feature={feature}
                        index={index}
                        isInView={isInView}
                      />
                    ))}
                  </ul>
                  <ViewMoreDialog />
                </motion.div>
              </div>
    
              {/* Card Section */}
              <div className="flex-1 flex justify-center">
                <motion.div
                  initial={{ opacity: 0 }}
                  style={{
                    scale: cardScale,
                    opacity: cardOpacity,
                    y: cardY,
                    rotateX: cardRotateX,
                  }}
                  className="relative perspective-1000"
                  onMouseMove={handleMouseMove}
                  onMouseLeave={handleMouseLeave}
                  ref={cardRef}
                  onClick={handleCardClick}
                >
                  {/* Card Flip Container */}
                  <motion.div
                    className="relative preserve-3d w-[320px] h-[200px] cursor-pointer"
                    style={{
                      rotateX,
                      rotateY,
                      transformStyle: "preserve-3d",
                    }}
                    animate={{ rotateY: isFlipped ? 180 : 0 }}
                    transition={{
                      duration: 0.8,
                      type: "spring",
                      stiffness: 100,
                      damping: 20,
                    }}
                  >
                    {/* Card Front */}
                    <motion.div
                      className="absolute inset-0 backface-hidden rounded-2xl overflow-hidden shadow-2xl"
                      style={{
                        backfaceVisibility: "hidden",
                        WebkitBackfaceVisibility: "hidden",
                      }}
                    >
                      <Image
                        src="/images/bdfcard.png"
                        alt="Bitcoin Deepa Card Front"
                        width={640}
                        height={400}
                        className="w-full h-full object-cover"
                      />
                      <motion.div
                        className="absolute inset-0 bg-gradient-radial from-white/20 to-transparent opacity-50 pointer-events-none"
                        style={{
                          backgroundPosition: `${glareX}% ${glareY}%`,
                          backgroundSize: "150% 150%",
                        }}
                      />
                    </motion.div>
    
                    {/* Card Back */}
                    <motion.div
                      className="absolute inset-0 backface-hidden rounded-2xl overflow-hidden shadow-2xl"
                      style={{
                        backfaceVisibility: "hidden",
                        WebkitBackfaceVisibility: "hidden",
                        transform: "rotateY(180deg)",
                      }}
                    >
                      <Image
                        src="/images/bdbcard.png"

    @qodo-code-review
    Copy link
    Copy Markdown

    qodo-code-review bot commented Jul 15, 2025

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Impact
    General
    Fix gradient color inconsistency

    The gradient uses inconsistent colors - the first color #f90 doesn't match the
    updated bitcoin DEFAULT color #f7901a. This creates visual inconsistency in the
    brand gradient.

    tailwind.config.ts [90]

    -"bitcoin-gradient": "linear-gradient(to right, #f90, #f89319)",
    +"bitcoin-gradient": "linear-gradient(to right, #f7901a, #f89319)",
    • Apply / Chat
    Suggestion importance[1-10]: 7

    __

    Why: The suggestion correctly points out that the bitcoin-gradient uses the old color #f90 while the bitcoin.DEFAULT color was updated to #f7901a, fixing a visual inconsistency introduced in the PR.

    Medium
    • Update

    @vercel
    Copy link
    Copy Markdown

    vercel bot commented Jul 22, 2025

    @helloscoopa is attempting to deploy a commit to the CeyLabs Projects team on Vercel, but is not a member of this team. To resolve this issue, you can:

    • Make your repository public. Collaboration is free for open source and public repositories.
    • Add @helloscoopa as a member. A Pro subscription is required to access Vercel's collaborative features.
      • If you're the owner of the team, click here and add @helloscoopa as a member.
      • If you're the user who initiated this build request, click here to request access.
      • If you're already a member of the CeyLabs Projects team, make sure that your Vercel account is connected to your GitHub account.

    To read more about collaboration on Vercel, click here.

    @kasuncfdo kasuncfdo self-assigned this Aug 1, 2025
    @helloscoopa helloscoopa requested review from rayaanr and saga95 and removed request for rayaanr and saga95 August 6, 2025 16:43
    @cmnisal cmnisal requested review from rayaanr and saga95 and removed request for rayaanr and saga95 August 6, 2025 16:43
    @vercel
    Copy link
    Copy Markdown

    vercel bot commented Aug 6, 2025

    @cmnisal is attempting to deploy a commit to the CeyLabs Projects team on Vercel, but is not a member of this team. To resolve this issue, you can:

    • Make your repository public. Collaboration is free for open source and public repositories.
    • Add @cmnisal as a member. A Pro subscription is required to access Vercel's collaborative features.
      • If you're the owner of the team, click here and add @cmnisal as a member.
      • If you're the user who initiated this build request, click here to request access.
      • If you're already a member of the CeyLabs Projects team, make sure that your Vercel account is connected to your GitHub account.

    To read more about collaboration on Vercel, click here.

    @kasuncfdo kasuncfdo requested a review from rayaanr August 6, 2025 19:36
    rayaanr
    rayaanr previously approved these changes Aug 7, 2025
    Copy link
    Copy Markdown

    @saga95 saga95 left a comment

    Choose a reason for hiding this comment

    The reason will be displayed to describe this comment to others. Learn more.

    better convert the images into webp

    @kasuncfdo
    Copy link
    Copy Markdown
    Collaborator Author

    kasuncfdo commented Aug 11, 2025

    @ceyvibes Everything looks good!

    @vercel
    Copy link
    Copy Markdown

    vercel bot commented Aug 18, 2025

    @mrcentimetre is attempting to deploy a commit to the CeyLabs Projects team on Vercel, but is not a member of this team. To resolve this issue, you can:

    • Make your repository public. Collaboration is free for open source and public repositories.
    • Add @mrcentimetre as a member. A Pro subscription is required to access Vercel's collaborative features.
      • If you're the owner of the team, click here and add @mrcentimetre as a member.
      • If you're the user who initiated this build request, click here to request access.
      • If you're already a member of the CeyLabs Projects team, make sure that your Vercel account is connected to your GitHub account.

    To read more about collaboration on Vercel, click here.

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

    Labels

    enhancement New feature or request Review effort 2/5

    Projects

    None yet

    Development

    Successfully merging this pull request may close these issues.

    7 participants