Skip to content
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

feat: coming soon #14

Merged
merged 2 commits into from
Jan 19, 2025
Merged

feat: coming soon #14

merged 2 commits into from
Jan 19, 2025

Conversation

hib4
Copy link
Member

@hib4 hib4 commented Jan 19, 2025

Description

Coming soon page

Type of Change

  • ✨ New feature (non-breaking change which adds functionality)
  • 🛠️ Bug fix (non-breaking change which fixes an issue)
  • ❌ Breaking change (fix or feature that would cause existing functionality to change)
  • 🧹 Code refactor
  • ✅ Build configuration change
  • 📝 Documentation
  • 🗑️ Chore

@hib4 hib4 self-assigned this Jan 19, 2025
@hib4
Copy link
Member Author

hib4 commented Jan 19, 2025

/review

Copy link

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

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

Possible Issue

The useEffect dependency array includes words, which is derived from React.useMemo. While useMemo ensures the array is stable, it is worth double-checking if this dependency is necessary or if it could lead to unnecessary re-renders.

useEffect(() => {
  let typingTimeout: NodeJS.Timeout;

  const currentWord = words[wordIndex];

  if (isTyping) {
    if (displayText.length < currentWord.length) {
      typingTimeout = setTimeout(() => {
        setDisplayText(currentWord.slice(0, displayText.length + 1));
      }, LETTER_TYPE_DELAY);
    } else {
      typingTimeout = setTimeout(() => setIsTyping(false), WORD_STAY_DELAY);
    }
  } else {
    if (displayText.length > 0) {
      typingTimeout = setTimeout(() => {
        setDisplayText(currentWord.slice(0, displayText.length - 1));
      }, LETTER_TYPE_DELAY);
    } else {
      setWordIndex((prevIndex) => (prevIndex + 1) % words.length);
      setIsTyping(true);
    }
  }

  return () => clearTimeout(typingTimeout);
}, [displayText, isTyping, wordIndex, words]);
Font Configuration

The addition of the Montserrat font in the layout may affect the overall styling. Ensure this change aligns with the intended design and does not introduce inconsistencies.

import { Geist, Geist_Mono, Montserrat } from "next/font/google";
import "./globals.css";
import Navbar from "./components/Navbar";

const geistSans = Geist({
  variable: "--font-geist-sans",
  subsets: ["latin"],
});

const geistMono = Geist_Mono({
  variable: "--font-geist-mono",
  subsets: ["latin"],
});

const montserrat = Montserrat({
  variable: "--font-montserrat",
  subsets: ["latin"],
});
Animation Keyframes

The new blink animation keyframes should be validated for performance and compatibility across different browsers to ensure smooth behavior.

animation: {
  blink: "blink 1s ease-in-out infinite",
},
keyframes: {
  blink: {
    "0%, 100%": { opacity: 0 },
    "50%": { opacity: 1 },
  },
},

@hib4 hib4 merged commit 9f861ce into main Jan 19, 2025
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