Projects

  • Frontend

    • AdFree Youtube 🡵

      image

      • Search Bar Optimization: To ensure optimal performance and reduce load on the backend, I implemented debouncing in the search bar. This minimizes the number of API calls made as the user types the query by almost 70%.
      • N-nested Comments: Implemented n-nested comments, where each comment and its corresponding replies are nested, making it easier for viewers to identify the replies. Used recursive components and minimized code duplication.
      • Live Chat: Used API Polling to simulate a live chat like environment.
      • Tech Stack: Reactjs, Redux, Tailwind CSS, Vercel
    • Crowdfunding Platform 🡵

      image

      • A platform developed specifically for the institute’s ROTARACT club where individuals can browse through different ongoing campaigns and support a cause by donating money to the campaign.
      • Admin can create / edit / activate / deactivate campaigns based on requirement. Used Paytm gateway for payments; Added support for features like option to share campaigns, ask related queries.
      • Implemented on demand loading for various components along with shimmers for a great user experience. Followed good coding practices.
      • Tech Stack: Reactjs, Nodejs, Vercel, MongoDB
    • E-Commerce - mobile app 🡵

      • Developed an ecommerce app with functionalities of listing different products across varied categories, adding items in cart, and placing orders.
      • Added caching and offline support, ensuring seamless user experience even in low network areas.
      • Tech Stack: React Native, Nodejs, MongoDB
  • Backend

    • Multiplayer Card Game(Nodejs based)

      image image

      • Made a multiplayer card game with the following features/rules:
        • Supports multiple players (up to 4) and different types of cards e.g. number cards, action cards, etc.
        • Each player starts with a hand of 5 cards. Players take turns playing cards from their hand, following a set of rules that define what cards can be played when.
        • A player can only play a card if it matches either the suit or the rank of the top card on the discard pile.
        • If a player cannot play a card, they must draw a card from the draw pile. If the draw pile is empty, the game ends in a draw and no player is declared a winner.
        • The game ends when one player runs out of cards who is declared the winner.
        • Aces, Kings, Queens and Jack are action cards. When one of these is played the following actions occur:
          • Ace(A): Skip the next player in turn
          • Kings(K): Reverse the sequence of who plays next
          • Queens(Q): +2
          • Jacks(J): +4