top of page

Find Luigi
A Competitive Web Game

Find Luigi is a daily web-based game that challenges players to locate Luigi in a grid or image as quickly as possible. Each day, a new Luigi location is determined using a set seed, ensuring a unique challenge for all players worldwide. The game tracks player performance and ranks scores on a daily leaderboard, fostering a competitive yet casual gaming experience.

key features.png
Key Features
  • Daily Challenges: Every day, a new Luigi is generated using a consistent seed, ensuring fairness and variety.

  • Leaderboards: Players compete to achieve the fastest time in locating Luigi. A dynamic leaderboard keeps track of daily scores, which reset at midnight (CST).

  • Single Submission Rule: Players can only submit their score once per day, promoting genuine competition.

  • Real-Time Validation: Name validation checks prevent offensive language or banned words from being submitted to the leaderboard.

  • Aesthetic Design: A polished interface built with HTML, CSS, and JavaScript delivers a seamless, engaging user experience.

technical checklist icon.png
Technical Details
  • Frontend:

    • Built with HTML, CSS, and JavaScript.

    • Developed using Vite, providing a fast development environment and optimized build process.

  • Backend:

    • Hosted on Netlify Functions, offering a serverless architecture to handle user submissions and leaderboard operations.

    • Firestore stores leaderboard data and ensures fast, reliable database operations.

  • Daily Reset Mechanism:

    • A scheduled task ensures the leaderboard resets precisely at 12:00 AM CST every day, allowing fresh competition.

Technologies Used

Programming Languages: CSS, HTML, JavaScript
Libraries and Tools:
  - ReactJS: Used for the main code structure and dynamic frontend.
  - Vite: Handles the front end of the website
  - Netlify: For web hosting and deploying the website
  - GCP and Firebase: For cloud database structure handling

tech used icon.png
Key Challenges and Solutions
  • Fair Competition:

    • Challenge: Preventing players from submitting multiple times.

    • Solution: Implemented backend checks to enforce one submission per user per day.

  • Leaderboard Reset:

    • Challenge: Automating leaderboard resets without manual intervention.

    • Solution: Developed a time-based system using serverless functions to clear data daily.

  • Scalable Performance:

    • Challenge: Managing increasing player activity with a responsive leaderboard.

    • Solution: Leveraged Firestore for efficient database reads/writes and scalability.

challenges overcome icon.png
bottom of page