<?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: Syed Hammas</title>
    <description>The latest articles on DEV Community by Syed Hammas (@syedhammas).</description>
    <link>https://dev.to/syedhammas</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%2F3088426%2F26a42118-e6c2-4ecb-a97e-95ea40bf2895.png</url>
      <title>DEV Community: Syed Hammas</title>
      <link>https://dev.to/syedhammas</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/syedhammas"/>
    <language>en</language>
    <item>
      <title>🌟 Building a Beautiful Markdown Previewer with HTML, CSS, and JavaScript</title>
      <dc:creator>Syed Hammas</dc:creator>
      <pubDate>Mon, 28 Apr 2025 15:39:18 +0000</pubDate>
      <link>https://dev.to/syedhammas/building-a-beautiful-markdown-previewer-with-html-css-and-javascript-7dg</link>
      <guid>https://dev.to/syedhammas/building-a-beautiful-markdown-previewer-with-html-css-and-javascript-7dg</guid>
      <description>&lt;h2&gt;
  
  
  🛠️ What I Made
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I built a fully functional and visually modern Markdown Previewer using only HTML, CSS, and JavaScript.&lt;br&gt;
This project satisfies all the freeCodeCamp Frontend Libraries Project user stories without relying on frontend frameworks like React.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The previewer allows users to type Markdown syntax into a text area and instantly see the rendered HTML in a separate preview pane.&lt;br&gt;
I also added a clean and stylish dark mode to enhance the user experience.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🔧 How I Made It
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;HTML:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Structured the page with a simple container, a textarea (#editor) for input, and a div (#preview) for output.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;CSS:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Designed a modern card-style layout with soft shadows, rounded corners, and smooth background transitions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Created a responsive design that works well on both desktop and mobile devices.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Implemented a Dark Mode Toggle that switches themes dynamically with minimal flicker.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;JavaScript:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Used the Marked.js library to parse the Markdown into HTML.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Added a real-time event listener (input) on the editor to update the preview instantly as the user types.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Handled the dark mode logic by toggling CSS classes dynamically.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📚 What I Learned
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;How to manually build interactive front-end applications without relying on heavy frameworks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deepened my understanding of DOM manipulation, event listeners, and dynamic HTML rendering.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Improved my skills in designing responsive layouts and creating a dark mode experience from scratch.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learned the importance of progressively enhancing simple projects with thoughtful UI/UX improvements to deliver a better experience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Understood how to use external libraries like Marked.js efficiently and integrate automated testing scripts to validate project requirements.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✨ Final Thoughts&lt;br&gt;
Working without React or Vue in this project pushed me to fully appreciate the power of vanilla JavaScript combined with smart CSS.&lt;br&gt;
It was an exciting exercise in focusing on core web development fundamentals while still delivering a polished and professional-looking final product.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>JavaScript Calculator.</title>
      <dc:creator>Syed Hammas</dc:creator>
      <pubDate>Mon, 28 Apr 2025 13:37:54 +0000</pubDate>
      <link>https://dev.to/syedhammas/javascript-calculator-4009</link>
      <guid>https://dev.to/syedhammas/javascript-calculator-4009</guid>
      <description>&lt;h2&gt;
  
  
  🛠 What I Made:
&lt;/h2&gt;

&lt;p&gt;I built a JavaScript Calculator that performs basic arithmetic operations like addition, subtraction, multiplication, and division. The calculator features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Buttons for each digit (0-9) and operation (+, -, *, /).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A display screen that shows the input and results.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A clear button to reset the calculation.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  💻 How I Made It:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;HTML Structure:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Designed the calculator layout with buttons for numbers and operations, a display screen (#display), and a reset button (C).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Organized the layout into rows and columns using a simple grid layout for better visual alignment.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;CSS Styling:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Styled the calculator with a modern look, using box shadows, rounded corners, and a clean color scheme.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ensured that the calculator is responsive for smaller screens by adjusting the button sizes and layout using media queries.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Added hover and active button effects to improve user interactivity.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;JavaScript Functionality:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Defined a display variable to show the input or result in the calculator.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Created an array of button elements that correspond to digits and operations.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Added event listeners for each button to:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Append digits or operations to the display when clicked.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Evaluate the expression when the equals button (=) is pressed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clear the display when the clear button (C) is clicked.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Utilized JavaScript’s eval() method to evaluate the mathematical expression entered by the user.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Operations and Calculation Logic:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Handled basic arithmetic operations: addition, subtraction, multiplication, and division.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The calculator also properly manages operator precedence and parentheses.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Error Handling:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Included error handling for cases like division by zero or invalid input, ensuring the calculator doesn’t break unexpectedly.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📚 What I Learned:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Event Handling and DOM Manipulation:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I learned how to handle click events for the calculator’s buttons and how to dynamically update the display using JavaScript.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Manipulating the DOM to update the UI in real-time was an important skill I developed in this project.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;JavaScript Functions:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I improved my understanding of functions in JavaScript, particularly how to define them for specific tasks like performing calculations, appending input to the display, and clearing the screen.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Math Operations and Eval Method:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I gained knowledge of how to use JavaScript's built-in eval() function for evaluating mathematical expressions. I also learned the importance of error handling in case of invalid operations.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;CSS Layout and Design:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I enhanced my skills in creating flexible layouts using CSS, such as using the grid layout for organizing buttons and ensuring a responsive design for mobile screens.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Interactive UI Design:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I refined my ability to make interactive UI elements that respond to user input through hover effects, click actions, and smooth transitions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Learning how to create a user-friendly interface for a calculator with clean and modern design elements was a valuable experience.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Debugging and Optimization:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I faced challenges related to ensuring correct calculations and handling edge cases like invalid inputs. Debugging these issues helped me improve my problem-solving skills.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In summary, the JavaScript Calculator project strengthened my abilities in HTML, CSS, and JavaScript. I learned how to combine dynamic event handling, math operations, and UI design to create a fully functional web-based application. The project enhanced my skills in handling user interactions and debugging real-time applications.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Drum Machine.</title>
      <dc:creator>Syed Hammas</dc:creator>
      <pubDate>Mon, 28 Apr 2025 13:18:06 +0000</pubDate>
      <link>https://dev.to/syedhammas/drum-machine-1c6i</link>
      <guid>https://dev.to/syedhammas/drum-machine-1c6i</guid>
      <description>&lt;p&gt;🛠 What I Made:&lt;br&gt;
I created an interactive Drum Machine where users can play different drum sounds by either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clicking on the drum pads on the screen.&lt;/li&gt;
&lt;li&gt;Pressing corresponding keys on the keyboard.
The machine also displays the name of the currently playing 
sound in a dynamic text area.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;💻 How I Made It:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;HTML Structure:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Created the basic structure of the drum machine using HTML. This includes a main container (#drum-machine), a display area (#display) to show which sound is playing, and a container for the drum pads (.pad-container).&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;CSS Styling:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Applied a dark theme using dark background colors and light text colors.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Used flexbox to center the drum machine container on the screen.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Styled the drum pads with rounded corners, gradients, and interactive hover and active states to make the interface more appealing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Incorporated responsive design using media queries to ensure the layout adjusts on smaller screens.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;JavaScript Functionality:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Defined an array of sounds, each with:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A key that corresponds to a keyboard key (Q, W, E, etc.).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A sound name (id) that appears in the display when the sound is played.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The audio file URL for each drum sound.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Dynamically generated drum pads using JavaScript by looping through the sounds array.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Attached click event listeners to the pads so that clicking a pad plays the corresponding sound.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Added a keydown event listener to play sounds when the user presses corresponding keys on the keyboard.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Used a playSound function to manage audio playback and update the display text.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Interactivity and User Experience:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The drum pads are designed to scale and change color on hover, and to shrink when clicked for a tactile effect.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The display area updates with the name of the sound every time a drum pad is clicked or a key is pressed, providing real-time feedback to the user.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📚 What I Learned:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Dynamic Element Creation:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I learned how to dynamically generate HTML elements (drum pads in this case) using JavaScript. This is useful when you need to create multiple elements based on data (like the sounds array here).&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Event Handling:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I gained more experience with handling DOM events, such as click and keydown, to trigger functions and interact with the user interface.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;CSS Effects and Transitions:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I learned how to apply gradients, hover effects, and smooth transitions in CSS to enhance the interactivity and design of the user interface.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I also experimented with responsive design using media queries to adjust the layout for different screen sizes.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Audio Handling in JavaScript:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I learned how to embed audio files in HTML and control their playback using JavaScript. This included resetting the audio to play from the beginning when triggered multiple times.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;UI/UX Design:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;I improved my skills in creating user-friendly interfaces that are visually appealing and interactive, making the experience smoother and more engaging.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Debugging and Testing:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;While building the project, I encountered some issues like event listeners not being triggered as expected, but I learned how to debug these problems by using console.log() and ensuring that elements were correctly referenced.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In summary, this project helped me enhance my knowledge of HTML, CSS, and JavaScript to create interactive, visually appealing web applications. I learned how to combine event handling, dynamic content generation, and audio manipulation to build an engaging web-based application.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Random Quote Machine.</title>
      <dc:creator>Syed Hammas</dc:creator>
      <pubDate>Mon, 28 Apr 2025 11:44:17 +0000</pubDate>
      <link>https://dev.to/syedhammas/random-quote-machine-53fi</link>
      <guid>https://dev.to/syedhammas/random-quote-machine-53fi</guid>
      <description>&lt;p&gt;What I Made:&lt;br&gt;
I created a Random Quote Machine using HTML, CSS, and JavaScript. The app displays random quotes along with their authors and provides functionality for users to tweet them directly. The key features include:&lt;/p&gt;

&lt;p&gt;Dynamic Random Quotes: A collection of inspirational quotes displayed each time the user clicks "New Quote."&lt;/p&gt;

&lt;p&gt;Tweet Integration: A "Tweet" button allows users to share their favorite quotes on Twitter.&lt;/p&gt;

&lt;p&gt;Clean and Accessible Layout: The app is designed to be user-friendly and visually appealing, using modern fonts and a mobile-responsive layout.&lt;/p&gt;

&lt;p&gt;How I Made It:&lt;br&gt;
HTML Structure:&lt;/p&gt;

&lt;p&gt;I created a container (#quote-box) that holds the quote, author, and buttons.&lt;/p&gt;

&lt;p&gt;The "New Quote" button fetches new quotes, and the "Tweet" button generates a shareable Twitter link.&lt;/p&gt;

&lt;p&gt;CSS Styling:&lt;/p&gt;

&lt;p&gt;I used a simple yet modern design, leveraging Google Fonts (Poppins) for a clean appearance.&lt;/p&gt;

&lt;p&gt;I ensured the layout is centered and responsive for all screen sizes, making it user-friendly on both desktop and mobile devices.&lt;/p&gt;

&lt;p&gt;JavaScript Logic:&lt;/p&gt;

&lt;p&gt;I built an array of quotes and used JavaScript to randomly display a quote when the page loads and when the "New Quote" button is clicked.&lt;/p&gt;

&lt;p&gt;The "Tweet" button dynamically generates a Twitter share link with the current quote and author, enabling users to easily tweet the quote.&lt;/p&gt;

&lt;p&gt;What I Learned:&lt;br&gt;
JavaScript Functions and DOM Manipulation: This project deepened my understanding of how to manipulate the DOM using JavaScript, especially how to dynamically update content like the text of a quote and the URL of the "Tweet" button.&lt;/p&gt;

&lt;p&gt;Event Handling: I learned to handle user interactions efficiently, such as detecting button clicks to trigger actions like fetching a new quote.&lt;/p&gt;

&lt;p&gt;CSS Layout and Responsiveness: I got better at using CSS to create responsive layouts, ensuring that the app looks great across all devices.&lt;/p&gt;

&lt;p&gt;API and Data Management: Although I didn’t use an external API for quotes, I gained a better understanding of how to work with arrays and data structures to store and retrieve dynamic content.&lt;/p&gt;

&lt;p&gt;Conclusion:&lt;br&gt;
This project helped me sharpen my front-end skills by combining HTML, CSS, and JavaScript into a fully functional, interactive app. It was a great way to practice handling user input, working with dynamic content, and improving UI/UX design.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📚25 + 5 Clock – My Pomodoro Timer Project</title>
      <dc:creator>Syed Hammas</dc:creator>
      <pubDate>Mon, 28 Apr 2025 10:48:16 +0000</pubDate>
      <link>https://dev.to/syedhammas/25-5-clock-my-pomodoro-timer-project-15i</link>
      <guid>https://dev.to/syedhammas/25-5-clock-my-pomodoro-timer-project-15i</guid>
      <description>&lt;p&gt;🛠 What I Made&lt;br&gt;
I built a 25 + 5 Clock – a simple but functional Pomodoro Timer app!&lt;br&gt;
It allows users to:&lt;/p&gt;

&lt;p&gt;Set custom session and break lengths.&lt;/p&gt;

&lt;p&gt;Start, pause, and reset the timer.&lt;/p&gt;

&lt;p&gt;Automatically switch between session and break modes.&lt;/p&gt;

&lt;p&gt;Play a sound when switching.&lt;/p&gt;

&lt;p&gt;This project is styled with basic CSS to keep the interface clean and easy to use.&lt;/p&gt;

&lt;p&gt;🧩 How I Made It&lt;br&gt;
HTML: Structured the layout, including sections for session/break controls, the timer, and start/reset buttons.&lt;/p&gt;

&lt;p&gt;CSS: Designed a minimal, centered, user-friendly interface with clean buttons and layout.&lt;/p&gt;

&lt;p&gt;JavaScript:&lt;/p&gt;

&lt;p&gt;Managed timer logic using setInterval and clearInterval.&lt;/p&gt;

&lt;p&gt;Handled increment/decrement for session and break lengths.&lt;/p&gt;

&lt;p&gt;Implemented start, pause, reset, and mode switching between session and break.&lt;/p&gt;

&lt;p&gt;Played an audio beep when the timer hit zero.&lt;/p&gt;

&lt;p&gt;Updated the display dynamically as the timer counts down or when settings are adjusted.&lt;/p&gt;

&lt;p&gt;✨ What I Learned&lt;br&gt;
Timer logic: Handling countdowns with proper state management (timerRunning, currentMode, etc.).&lt;/p&gt;

&lt;p&gt;Event handling: Listening to button clicks for changing timer lengths and controlling the timer.&lt;/p&gt;

&lt;p&gt;DOM manipulation: Dynamically updating the display with real-time values.&lt;/p&gt;

&lt;p&gt;Audio control: Using JavaScript to play and reset audio elements properly.&lt;/p&gt;

&lt;p&gt;User experience (UX): Keeping buttons disabled at the right time and ensuring smooth session/break transitions.&lt;/p&gt;

&lt;p&gt;Coding discipline: Managing multiple moving parts like timers, sound, and UI updates cleanly in a simple project.&lt;/p&gt;

&lt;p&gt;🌟 Final Thoughts&lt;br&gt;
This project gave me hands-on experience with real-world JavaScript problems like state handling, timing, and dynamic DOM updates — and it felt great seeing it all come together into a polished mini app!&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
