<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Aaryan Tahir</title>
    <description>The latest articles on DEV Community by Aaryan Tahir (@aaryan_tahir_6c3500b9021a).</description>
    <link>https://dev.to/aaryan_tahir_6c3500b9021a</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1972473%2F20f371ec-c677-4170-9acc-840d27808e6c.png</url>
      <title>DEV Community: Aaryan Tahir</title>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aaryan_tahir_6c3500b9021a"/>
    <language>en</language>
    <item>
      <title>Drexel Bench</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Fri, 09 May 2025 10:08:54 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/drexel-bench-4849</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/drexel-bench-4849</guid>
      <description>&lt;p&gt;*&lt;strong&gt;&lt;em&gt;Preview&lt;/em&gt;&lt;/strong&gt;*&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/z4HfJy-qdHw"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Introducing Drexel Bench, a smart IoT-powered seat occupancy tracking system developed using the ESP32 microcontroller to showcase my expertise in embedded systems, real-time data processing, and full-stack integration.&lt;/p&gt;

&lt;p&gt;This project utilizes an ultrasonic sensor to detect the presence of a user within a configurable distance range (e.g., 75 cm). If a user remains seated for more than 30 seconds, the system activates a 15-minute countdown, displayed on a 1602 LCD module, and lights up a connected LED to visually signal that the seat is occupied. The LED turns off when the timer ends or the seat is unoccupied for 3 continuous minutes.&lt;/p&gt;

&lt;p&gt;What sets this system apart is its Wi-Fi integration. Upon detecting occupancy or vacancy, the ESP32 sends status updates (occupied or free) via HTTP to a connected web application. The web dashboard dynamically switches between two images — a green layout for free seating and a red overlay for occupied — offering users a clear, real-time visual of availability.&lt;/p&gt;

&lt;p&gt;This project highlights my capabilities in sensor integration, timer logic, ESP32 Wi-Fi programming, and frontend/backend interaction, making it a practical demonstration of end-to-end IoT development. Whether for smart campuses or waiting areas, this system delivers real-world utility through modern, scalable technology.&lt;/p&gt;

</description>
      <category>esp32</category>
      <category>webdev</category>
      <category>realtime</category>
      <category>sensors</category>
    </item>
    <item>
      <title>What's in my Fridge</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Mon, 10 Mar 2025 19:09:42 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/whats-in-my-fridge-28na</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/whats-in-my-fridge-28na</guid>
      <description>&lt;p&gt;*&lt;strong&gt;&lt;em&gt;Preview&lt;/em&gt;&lt;/strong&gt;*&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/YVmMhcfUGWs"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What’s in My Fridge? – Full-Stack Web Development Project&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;For this project, I developed &lt;strong&gt;What’s in My Fridge?&lt;/strong&gt;, a web-based application that helps users generate meal ideas based on the ingredients they have. The goal was to create a seamless, user-friendly platform that reduces food waste while making cooking more accessible. I worked on both the &lt;strong&gt;front-end and back-end&lt;/strong&gt;, ensuring smooth functionality and an intuitive user experience.  &lt;/p&gt;

&lt;p&gt;On the &lt;strong&gt;front-end&lt;/strong&gt;, I designed and formatted the &lt;strong&gt;main webpage&lt;/strong&gt;, implemented &lt;strong&gt;interactive recipe cards&lt;/strong&gt; with hover animations, and structured &lt;strong&gt;recipe categories&lt;/strong&gt; for easy navigation. On the &lt;strong&gt;back-end&lt;/strong&gt;, I worked with &lt;strong&gt;SQL databases&lt;/strong&gt; to manage recipe data, populating ingredient tables and setting up relationships for efficient data retrieval. Additionally, I collaborated with my team to review and refine the site, ensuring consistency, responsiveness, and smooth integration between the front-end and database. Through this project, I strengthened my skills in &lt;strong&gt;React.js, CSS, SQL, UI/UX design, and full-stack development&lt;/strong&gt;, while also gaining experience in &lt;strong&gt;Agile workflows, team collaboration, and database management&lt;/strong&gt; to deliver a well-rounded final product.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>UnDistractor</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Sun, 25 Aug 2024 14:44:02 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/undistractor-31hn</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/undistractor-31hn</guid>
      <description>&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/lKNPIh5ow5o"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Undistractor&lt;/strong&gt; is a desktop notification application designed to keep users focused during crucial study sessions or exam preparations by delivering timely reminders. It sends an initial motivational notification alerting users about an upcoming exam, urging them to study, followed by a follow-up notification if the user hasn’t taken action. The system operates in a loop, sending notifications at regular intervals to ensure continuous awareness and motivation. Utilizing the &lt;code&gt;plyer&lt;/code&gt; library for notifications and Python’s &lt;code&gt;time&lt;/code&gt; and &lt;code&gt;threading&lt;/code&gt; modules for scheduling, Undistractor features customizable alerts with user-defined icons to enhance engagement and effectiveness. Ideal for students and professionals needing structured reminders to minimize distractions and boost productivity, this tool helps users stay on track and achieve their goals.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;from plyer import notification
import time
import threading

# Function to send the initial notification
def send_initial_notification():
    title = 'DONT GET DISTRACTED !'
    message = 'Exam in 6 hrs, You better Study'
    notification.notify(
        title=title,
        message=message,
        app_icon=r"C:\Users\Aaryan\Desktop\CODE\Projects\Undistractor\heart.ico",
        timeout=5,  # Notification stays for 5 seconds
        toast=False
    )

# Function to send a follow-up notification if needed
def send_follow_up_notification():
    title = 'CLOSING ME WONT HELP!'
    message = 'You still need to study!'
    notification.notify(
        title=title,
        message=message,
        app_icon=r"C:\Users\Aaryan\Desktop\CODE\Projects\Undistractor\heart.ico",
        timeout=5,  # Notification stays for 5 seconds
        toast=False
    )

# Function to check and send follow-up notification
def check_and_notify():
    while True:
        send_initial_notification()
        # Wait for 60 seconds before sending follow-up notification
        time.sleep(2)  # Adjust sleep time as needed
        send_follow_up_notification()
        # Sleep for 5 hours before sending the initial notification again
        time.sleep(10)  # 5 hours

# Run the notification checker in a separate thread
thread = threading.Thread(target=check_and_notify)
thread.start()

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>Rock-Paper-Scissors:The Ultimate Showdown [GUI]</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Sun, 25 Aug 2024 14:31:26 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/rock-paper-scissorsthe-ultimate-showdown-gui-d49</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/rock-paper-scissorsthe-ultimate-showdown-gui-d49</guid>
      <description>&lt;p&gt;&lt;strong&gt;Preview&lt;/strong&gt;&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/jhqbnzp-mdQ"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Rock-Paper-Scissors: The Ultimate Showdown** is an engaging Pygame-based game that modernizes the classic hand game with a rich interactive experience. Players select rock, paper, or scissors through intuitive icons, and the game vividly displays both the player's and the computer’s choices with high-quality graphics and animations. Enhanced by immersive sound effects, including clicks and choice-specific audio, the game dynamically tracks scores and progresses until one side hits the target score. Featuring customizable win conditions and an engaging win/loss screen, the game offers replayability with options to continue or exit, and concludes with a thank you and credits screen. This project showcases proficiency in &lt;strong&gt;game development&lt;/strong&gt;, &lt;strong&gt;graphic design&lt;/strong&gt;, and &lt;strong&gt;sound integration&lt;/strong&gt;, delivering a polished, interactive gaming experience.&lt;/p&gt;

</description>
      <category>python</category>
    </item>
    <item>
      <title>Desktop Virtual Assistant</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Sun, 25 Aug 2024 14:20:16 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/desktop-virtual-assistant-batman-5cci</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/desktop-virtual-assistant-batman-5cci</guid>
      <description>&lt;p&gt;*&lt;strong&gt;&lt;em&gt;'Python', 'Audio Recognition', 'OpenAI API', 'Web automation', 'API integration'&lt;/em&gt;&lt;/strong&gt;*&lt;/p&gt;

&lt;p&gt;Introducing Batman, an advanced virtual assistant developed using Python to showcase my skills in cutting-edge technology. This application leverages the speech_recognition library to activate with the wake word Batman, enabling intuitive voice commands. It seamlessly integrates web browsing capabilities to open websites such as Google, Facebook, YouTube, and LinkedIn. The assistant also features music playback through a custom music library and provides up-to-date news headlines using the NewsAPI.I utilized text-to-speech technologies with pyttsx3, gTTS, and pygame to deliver clear and engaging responses. Additionally, the integration of OpenAI’s GPT-3.5-turbo allows the assistant to handle complex queries with remarkable efficiency. This project highlights my expertise in voice recognition, web automation, and API integration, demonstrating a strong command of modern programming techniques and a commitment to creating innovative solutions.&lt;br&gt;
&lt;strong&gt;CODE&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;'''
FEATURES
• Voice Recognition
• Utilizes the speech_recognition library to listen for and recognize voice commands.
• Activates upon detecting the wake word "Jarvis."
• Text-to-Speech
• Converts text to speech using pyttsx3 for local conversion.
• Uses gTTS (Google Text-to-Speech) and pygame for playback.
• Web Browsing.
• Opens websites like Google, Facebook, YouTube, and LinkedIn based on voice
commands.
• Music Playback
• Interfaces with a musicLibrary module to play songs via web links.
• News Fetching
• Fetches and reads the latest news headlines using NewsAPI.
• OpenAI Integration
• Handles complex queries and generates responses using OpenAI's GPT-3.5-turbo.
• Acts as a general virtual assistant similar to Alexa or Google Assistant.
• Activates upon detecting the wake word "Jarvis."
• Text-to-Speech
'''
import speech_recognition as sr
import webbrowser
import pyttsx3
import requests
import pygame
import os

# pip install pocketsphinx

recognizer = sr.Recognizer()
engine = pyttsx3.init() 
newsapi = "4409ca2fd24147ab8d0d024fcd117d58"

def speak_old(text):
    engine.say(text)
    engine.runAndWait()

def speak(text):


    # Initialize Pygame mixer
    pygame.mixer.init()
    # Keep the program running until the music stops playing
    while pygame.mixer.music.get_busy():
        pygame.time.Clock().tick(10)

    pygame.mixer.music.unload()





if __name__ == "__main__":
    speak_old("Initializing batman....")
    speak_old('Hello, I am Aaryans Assistant. How can I help you?')

    while True:
        # Listen for the wake word "Batman"
        # obtain audio from the microphone
        r = sr.Recognizer()

        print("recognizing...")
        try:
            with sr.Microphone() as source:
                print("Listening...")
                audio = r.listen(source, timeout=1, phrase_time_limit=2)
            word = r.recognize_google(audio)
            if(word.lower() == "batman"):
                speak_old("Yes Sir")
                # Listen for command
                with sr.Microphone() as source:
                    print("Listening Active...")
                    audio = r.listen(source)
                    c = r.recognize_google(audio)
                    if "open google" in c.lower():
                            speak_old(" Opening Google")

                            webbrowser.open("https://google.com")

                    elif "open facebook" in c.lower():
                        speak_old(" Opening Facebook")      
                        webbrowser.open("https://facebook.com")

                    elif "open youtube" in c.lower():
                        speak_old(" Opening Youtube")      
                        webbrowser.open("https://youtube.com")

                    elif "open linkedin" in c.lower():
                        speak_old(" Opening linkedin")
                        webbrowser.open("https://linkedin.com")
                    elif "news" in c.lower():
                        speak_old("Here are the latest news")
                        r = requests.get(f"https://newsapi.org/v2/top-headlines?country=us&amp;amp;apiKey=4409ca2fd24147ab8d0d024fcd117d58")
                        if r.status_code == 200:
                            # Parse the JSON response
                            data = r.json()

                            # Extract the articles
                            articles = data.get('articles', [])

                            # Print the headlines
                            for article in articles:
                                speak_old(article['title'])


        except Exception as e:
            print("Error; {0}".format(e))




&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfhr24dm5c2xv28iamm7.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flfhr24dm5c2xv28iamm7.jpeg" alt="Image description" width="800" height="746"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>virtualmachine</category>
      <category>ai</category>
      <category>virtualassistant</category>
    </item>
    <item>
      <title>Meteor Strike</title>
      <dc:creator>Aaryan Tahir</dc:creator>
      <pubDate>Sun, 25 Aug 2024 13:01:09 +0000</pubDate>
      <link>https://dev.to/aaryan_tahir_6c3500b9021a/meteor-strike-43fn</link>
      <guid>https://dev.to/aaryan_tahir_6c3500b9021a/meteor-strike-43fn</guid>
      <description>&lt;p&gt;*&lt;strong&gt;&lt;em&gt;Preview&lt;/em&gt;&lt;/strong&gt;*&lt;br&gt;
&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/8Zec2pRuUFA"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Introducing "Meteor Strike," an engaging and interactive game developed using Python and Pygame, showcasing my ability to integrate multimedia elements into a dynamic gaming experience. In this project, players navigate a spaceship, dodge falling targets, and shoot at them to earn points. The game features a &lt;strong&gt;vibrant user interface&lt;/strong&gt; with custom graphics and sound effects, including an immersive background soundtrack.Key features include &lt;strong&gt;real-time gameplay mechanics&lt;/strong&gt; like bullet management and target spawning, a &lt;strong&gt;high score system&lt;/strong&gt; that tracks and saves player achievements, and interactive &lt;strong&gt;game over screens&lt;/strong&gt; with replay and exit options. Utilizing &lt;code&gt;pyttsx3&lt;/code&gt; for voice feedback and Pygame for game development, I crafted a polished and user-friendly experience. This project highlights my skills in &lt;strong&gt;game design&lt;/strong&gt;, &lt;strong&gt;event handling&lt;/strong&gt;, and &lt;strong&gt;multimedia integration&lt;/strong&gt;, demonstrating a thorough understanding of Python programming and game development principles.&lt;/p&gt;

</description>
      <category>python</category>
      <category>development</category>
      <category>gamedev</category>
    </item>
  </channel>
</rss>
