<?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: Viral News</title>
    <description>The latest articles on DEV Community by Viral News (@viralne94104639).</description>
    <link>https://dev.to/viralne94104639</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%2F510218%2Fe198ca70-f567-42d3-9cc4-04915294ca50.jpg</url>
      <title>DEV Community: Viral News</title>
      <link>https://dev.to/viralne94104639</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/viralne94104639"/>
    <language>en</language>
    <item>
      <title>AI Agents: MCP Is All You Need</title>
      <dc:creator>Viral News</dc:creator>
      <pubDate>Wed, 21 May 2025 18:16:09 +0000</pubDate>
      <link>https://dev.to/viralne94104639/ai-agents-mcp-is-all-you-need-5h15</link>
      <guid>https://dev.to/viralne94104639/ai-agents-mcp-is-all-you-need-5h15</guid>
      <description>&lt;p&gt;In today’s AI-driven world, large language models (LLMs) are no longer just assistants—they’re evolving into autonomous agents that plan, reason, take actions, and reflect. But behind this revolution lies a less-talked-about, yet foundational innovation: the Model Context Protocol (MCP).&lt;/p&gt;

&lt;p&gt;If you've been building AI agents or experimenting with multi-component AI systems, you're likely aware of the challenges of context sharing, state persistence, and tool orchestration. MCP solves all that—and more.&lt;/p&gt;

&lt;h2&gt;
  
  
  🚀 What is Model Context Protocol?
&lt;/h2&gt;

&lt;p&gt;Model Context Protocol (MCP) is an emerging standard that defines how AI models represent and exchange contextual information—such as memory, task goals, tools in use, and environmental feedback.&lt;/p&gt;

&lt;p&gt;It abstracts an agent’s internal "mind state" into a structured format that can be shared between different components or even different models.&lt;/p&gt;

&lt;p&gt;In practical terms: MCP helps you build agents that remember, reason, reflect, and act—all while maintaining coherence across tools, APIs, and time.&lt;/p&gt;

&lt;h2&gt;
  
  
  🤖 How MCP Powers Modern AI Agents
&lt;/h2&gt;

&lt;p&gt;Before MCP, developers had to manually pass prompts and patch memory systems. Agents were fragile, stateless, or limited in tool interaction. MCP brought order to chaos.&lt;/p&gt;

&lt;p&gt;Here's how it changes the game:&lt;/p&gt;

&lt;p&gt;✅ Unified Context Management&lt;br&gt;
MCP enables agents to access and update a shared memory state, aligning goals, plans, and execution history.&lt;/p&gt;

&lt;p&gt;🔧 Tool-Use Made Easy&lt;br&gt;
By structuring context for tool calls and responses, MCP allows seamless transitions between natural language thinking and programmatic tool use (e.g., calling APIs, querying databases).&lt;/p&gt;

&lt;p&gt;🔁 Long-Term Memory&lt;br&gt;
Agents can reflect on past conversations or tasks across sessions. Memory and feedback loops are built-in to the context model.&lt;/p&gt;

&lt;p&gt;🔗 Multi-Agent Collaboration&lt;br&gt;
Multiple agents (or models) can collaborate on a task by sharing and updating a single MCP-defined context.&lt;/p&gt;

&lt;p&gt;🛠 Real-World Use Cases&lt;br&gt;
AI copilots for developers that debug, refactor, and explain code while tracking your goals.&lt;/p&gt;

&lt;p&gt;Customer service agents that remember user history and use tools like CRM or email.&lt;/p&gt;

&lt;p&gt;Research assistants that read, summarize, query external data, and keep track of your focus areas.&lt;/p&gt;

&lt;p&gt;Workflow agents that orchestrate multiple tools (search, calculations, retrieval) based on a structured execution plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🧠 Why MCP is the Future of Agent Design&lt;/strong&gt;&lt;br&gt;
The AI industry is shifting from prompt engineering to agent orchestration. That requires structure, consistency, and memory—all of which MCP brings to the table.&lt;/p&gt;

&lt;p&gt;Here’s why MCP is key:&lt;/p&gt;

&lt;p&gt;Composability: Plug different models and modules together effortlessly.&lt;/p&gt;

&lt;p&gt;Scalability: Support long-running agents with persistent memory.&lt;/p&gt;

&lt;p&gt;Transparency: Auditable context state for debugging and explainability.&lt;/p&gt;

&lt;p&gt;Modularity: Tool calling, memory, and planning can be modular yet aligned.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;✨ Final Thoughts&lt;/strong&gt;&lt;br&gt;
Building agents isn't just about smarter models—it’s about smarter architecture. MCP provides the backbone for coherence, continuity, and composability. It’s enabling the shift from prompt-based interfaces to fully autonomous, memory-driven AI systems.&lt;/p&gt;

&lt;p&gt;If you’re building agents, orchestration tools, or AI-first platforms, it’s time to explore MCP.&lt;/p&gt;

&lt;p&gt;Because in the world of intelligent agents, MCP is all you need.&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Sust: Inspiring Sustainability Through Artistic Transitions</title>
      <dc:creator>Viral News</dc:creator>
      <pubDate>Sat, 18 Jan 2025 05:34:27 +0000</pubDate>
      <link>https://dev.to/viralne94104639/sust-inspiring-sustainability-through-artistic-transitions-4mcj</link>
      <guid>https://dev.to/viralne94104639/sust-inspiring-sustainability-through-artistic-transitions-4mcj</guid>
      <description>&lt;h1&gt;
  
  
  &lt;strong&gt;Sust: Empowering Sustainability with Google 3D Maps&lt;/strong&gt;
&lt;/h1&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What I Built&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Sust&lt;/strong&gt; is an interactive web app designed to promote sustainable living by analyzing and visualizing:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Air Quality Data&lt;/strong&gt;: Assess pollution levels and pinpoint areas with clean air.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Solar Data&lt;/strong&gt;: Identify locations with high solar energy potential for renewable energy projects.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Green Spots&lt;/strong&gt;: Locate eco-friendly spaces such as parks and forests within urban areas.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Walkability&lt;/strong&gt;: Analyze city walkability to encourage active and car-free lifestyles.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Using &lt;strong&gt;Google 3D Maps&lt;/strong&gt;, the app displays these datasets in an intuitive, visually appealing way, empowering users to make eco-conscious decisions and explore urban sustainability in depth.  &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Demo&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Check out the &lt;strong&gt;Sust&lt;/strong&gt; demo in action:&lt;br&gt;&lt;br&gt;
&lt;a href="https://youtu.be/mBqWOWpw0YY?si=vmLQ_cSr5irs7f8P" rel="noopener noreferrer"&gt;YouTube Video Demo&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Repo&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Explore the source code and documentation on GitHub:&lt;br&gt;&lt;br&gt;
&lt;a href="https://github.com/riush03/sust" rel="noopener noreferrer"&gt;GitHub Repository&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;website url&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Test project here:&lt;br&gt;&lt;br&gt;
&lt;a href="https://sust-sigma.vercel.app/" rel="noopener noreferrer"&gt;GitHub Repository&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Screenshots&lt;/strong&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1. Home Screen&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The landing page displays an interactive roadmap of cities with sustainability data layers.  &lt;/p&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%2Fdra2ua8sq941r5xouhua.png" 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%2Fdra2ua8sq941r5xouhua.png" alt="Image description" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;2. Air Quality Visualization&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Shows pollution levels across different locations, overlaid on Google 3D Maps.  &lt;/p&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%2Fj1ap2jyaeuk4mtgi0bmt.png" 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%2Fj1ap2jyaeuk4mtgi0bmt.png" alt="Image description" width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;3. Solar Data Overlay&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Highlights areas with optimal solar energy potential using heatmaps.  &lt;/p&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%2F9zo5fnec8mkln7gj3e20.png" 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%2F9zo5fnec8mkln7gj3e20.png" alt="Image description" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;4. Green Spot Mapping&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Identifies parks, green spaces, and eco-friendly urban zones.  &lt;/p&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%2Fzkkkddxq7p9fbx4kbx64.png" 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%2Fzkkkddxq7p9fbx4kbx64.png" alt="Image description" width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;5. Walkability Analysis&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Displays walkability scores for neighborhoods, encouraging car-free travel.  &lt;/p&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%2F7x2vv12x95skvulk53dx.png" 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%2F7x2vv12x95skvulk53dx.png" alt="Image description" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Copilot Experience&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;GitHub Copilot was integral to the development of &lt;strong&gt;Sust&lt;/strong&gt;, assisting in multiple ways:  &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Code Autocomplete&lt;/strong&gt;: Simplified coding for Google Maps integrations and ensured smooth data layer rendering.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Error Resolution&lt;/strong&gt;: Provided real-time suggestions to resolve bugs, particularly with map overlays and API calls.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Creative Insights&lt;/strong&gt;: Helped prototype new ideas for visualizing complex sustainability data.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Streamlined Workflow&lt;/strong&gt;: Reduced time spent on repetitive tasks like API configuration and data formatting.
&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;GitHub Models&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;I utilized claude-sonnet 3.5 to prototype and enhance the app's educational content, delivering contextual explanations about.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Sust&lt;/strong&gt; leverages technology and data to create a sustainable future. By providing actionable insights on air quality, solar energy, green spaces, and walkability, it empowers users to make informed choices for a greener planet.&lt;/p&gt;

&lt;p&gt;This project was made possible by &lt;strong&gt;GitHub Copilot&lt;/strong&gt;, which greatly accelerated development and allowed me to focus on delivering a meaningful, impactful app.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>webdev</category>
      <category>ai</category>
    </item>
    <item>
      <title>Building Plumbi: A Fun Puzzle Game with Reddit Devvit</title>
      <dc:creator>Viral News</dc:creator>
      <pubDate>Thu, 19 Dec 2024 08:18:21 +0000</pubDate>
      <link>https://dev.to/viralne94104639/building-plumbi-a-fun-puzzle-game-with-reddit-devvit-1c41</link>
      <guid>https://dev.to/viralne94104639/building-plumbi-a-fun-puzzle-game-with-reddit-devvit-1c41</guid>
      <description>&lt;p&gt;Have you ever wanted to bring your creativity to life inside Reddit? With Reddit's &lt;strong&gt;&lt;a href="https://developers.reddit.com/docs/" rel="noopener noreferrer"&gt;Devvit framework&lt;/a&gt;&lt;/strong&gt;, you can build interactive experiences for users directly within the platform. In this blog, I’ll share how I created Plumbi, a simple yet addictive puzzle game where players connect pipe pieces to let water flow.&lt;/p&gt;

&lt;p&gt;Plumbi combines the fun of puzzle-solving with Reddit's community-driven ecosystem, providing a seamless gaming experience using Devvit and Redis for data storage.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Plumbi?
&lt;/h2&gt;

&lt;p&gt;Plumbi is a level-based puzzle game where users must rotate and align pipe pieces on a grid to create a continuous path for water.&lt;/p&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%2Fik90u2io3knuofvvp3eg.png" 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%2Fik90u2io3knuofvvp3eg.png" alt="Plumbi game on reddit" width="800" height="428"&gt;&lt;/a&gt;&lt;br&gt;
 The game tracks progress, scores, and completion times, letting users compete with each other on a leaderboard. It’s lightweight, accessible, and designed to integrate directly into Reddit posts and comments.&lt;/p&gt;

&lt;p&gt;PLAY THE GAME HERE &lt;a href="https://www.reddit.com/r/plumbi/comments/1hepcst/my_devvit_post/?utm_source=share&amp;amp;utm_medium=web3x&amp;amp;utm_name=web3xcss&amp;amp;utm_term=1&amp;amp;utm_content=share_button" rel="noopener noreferrer"&gt;Plumbi game&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Devvit?
&lt;/h2&gt;

&lt;p&gt;Reddit's Devvit framework allows developers to create apps and interactive panels that work seamlessly within the Reddit platform. For Plumbi, Devvit provided:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Panel Support:&lt;/strong&gt; To create the game interface.&lt;br&gt;
User Interaction: To handle inputs like rotating pipe pieces.&lt;br&gt;
&lt;strong&gt;Seamless Integration:&lt;/strong&gt; Making the game available within Reddit posts, keeping users engaged without leaving the platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built Plumbi
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Setting Up the Devvit Environment&lt;/strong&gt;&lt;br&gt;
To get started with Devvit, I followed the official documentation to set up my development environment:&lt;/p&gt;

&lt;p&gt;Installed the Devvit CLI.&lt;br&gt;
&lt;code&gt;npm install -g devvit&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Game Logic
&lt;/h2&gt;

&lt;p&gt;The core of Plumbi revolves around managing a grid of pipe pieces. Here’s how I implemented it:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Grid Representation:&lt;/strong&gt; The game grid is a 2D array where each cell represents a pipe piece with properties like type (straight, curved) and orientation.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;const [gameBoard, setGameBoard] = useState&amp;lt;EmptyPipe[][]&amp;gt;(() =&amp;gt; {&lt;br&gt;
      return initializeGameBoard(currentLevelIndex);&lt;br&gt;
    });&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pipe Rotation:&lt;/strong&gt; Each pipe can rotate in 90-degree increments. Clicking on a piece triggers a rotation function:&lt;br&gt;
&lt;code&gt;&lt;br&gt;
export function rotatePipe(pipeType: EmptyPipe): EmptyPipe {&lt;br&gt;
    switch (pipeType) {&lt;br&gt;
      case EmptyPipe['═']:&lt;br&gt;
        return EmptyPipe['║'];&lt;br&gt;
      case EmptyPipe['║']:&lt;br&gt;
        return EmptyPipe['═'];&lt;br&gt;
      case EmptyPipe['╔']:&lt;br&gt;
        return EmptyPipe['╗'];&lt;br&gt;
      case EmptyPipe['╗']:&lt;br&gt;
        return EmptyPipe['╝'];&lt;br&gt;
      case EmptyPipe['╚']:&lt;br&gt;
        return EmptyPipe['╔'];&lt;br&gt;
      case EmptyPipe['╝']:&lt;br&gt;
        return EmptyPipe['╚'];&lt;br&gt;
      case EmptyPipe['╠']:&lt;br&gt;
        return EmptyPipe['╦'];&lt;br&gt;
      case EmptyPipe['╣']:&lt;br&gt;
        return EmptyPipe['╩'];&lt;br&gt;
      case EmptyPipe['╦']:&lt;br&gt;
        return EmptyPipe['╣'];&lt;br&gt;
      case EmptyPipe['╩']:&lt;br&gt;
        return EmptyPipe['╠'];&lt;br&gt;
      default:&lt;br&gt;
        return pipeType; // For pipes that don't rotate (like '╬')&lt;br&gt;
    }&lt;br&gt;
  }&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Path Validation:&lt;/strong&gt; A simple traversal algorithm checks if water can flow from the start to the end point.&lt;/p&gt;

&lt;p&gt;`&lt;br&gt;&lt;br&gt;
const checkForPath = (map: string[], x: number, y: number, direction: string, visited: boolean[][]): boolean =&amp;gt; {&lt;br&gt;
      if (y &amp;lt; 0 || y &amp;gt;= map.length || x &amp;lt; 0 || x &amp;gt;= map[y].length) return false;&lt;br&gt;
      if (visited[y][x]) return false;&lt;br&gt;
      visited[y][x] = true;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  const char = map[y][x];
  if (char === 'S' || char === 'F') return true;
  if (char in DirectionPipe) {
    if (char === direction) {
      return checkForPath(map, x + (direction === '═' ? 1 : 0), y + (direction === '║' ? 1 : 0), direction, visited);
    }
    return false;
  }
  return false;
};`
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;3. Storing Game States with Redis&lt;/strong&gt;&lt;br&gt;
To manage player data, levels, and leaderboards, I used Redis for its speed and simplicity:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Player Progress:&lt;/strong&gt; Stored current levels and game states for each player.&lt;br&gt;
&lt;strong&gt;Leaderboards:&lt;/strong&gt; Used Redis sorted sets to rank players based on completion times.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;async function awardPoints(context: Devvit.Context, username: string, levelIndex: number) {&lt;br&gt;
      const pointsForLevel = (levelIndex + 1) * 10; // Award more points for higher levels&lt;br&gt;
      await context.redis.zIncrBy('leaderboard', username, pointsForLevel);&lt;br&gt;
      return pointsForLevel;&lt;br&gt;
    }&lt;/code&gt;&lt;br&gt;
`&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Building Plumbi with Reddit Devvit was a rewarding experience that combined creativity and technical challenges. By leveraging Devvit’s capabilities and Redis’s speed, I was able to create an engaging game for Reddit users.&lt;/p&gt;

&lt;p&gt;If you’re a developer looking to bring your ideas to Reddit, give Devvit a try—it’s a fantastic platform for building community-driven applications!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>gamedev</category>
      <category>devvit</category>
      <category>typescript</category>
    </item>
    <item>
      <title>Lyrics generator app using assemblyai</title>
      <dc:creator>Viral News</dc:creator>
      <pubDate>Fri, 22 Nov 2024 08:27:13 +0000</pubDate>
      <link>https://dev.to/viralne94104639/lyrics-generator-app-using-assemblyai-577g</link>
      <guid>https://dev.to/viralne94104639/lyrics-generator-app-using-assemblyai-577g</guid>
      <description>&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%2Fybz671m9xxtijybags7h.png" 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%2Fybz671m9xxtijybags7h.png" alt="Image description" width="800" height="385"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/assemblyai"&gt;AssemblyAI Challenge &lt;/a&gt;: Sophisticated Speech-to-Text.&lt;/em&gt;&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://www.youtube.com/watch?si=9tD_jVf6XeiNDlDk&amp;amp;v=81zSDsmsUVE&amp;amp;feature=youtu.be" rel="noopener noreferrer"&gt;
      youtube.com
    &lt;/a&gt;
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://youtu.be/81zSDsmsUVE?si=9tD_jVf6XeiNDlDk" rel="noopener noreferrer"&gt;https://youtu.be/81zSDsmsUVE?si=9tD_jVf6XeiNDlDk&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built Lyricify, a web app that generates song lyrics from audio files. With this app, users can upload an audio file of a song, and it processes the file to extract lyrics using AssemblyAI’s Universal-2 Speech-to-Text model. The app is simple, efficient, and designed to help artists, producers, and music enthusiasts convert audio content into readable text effortlessly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Upload Audio Files:&lt;/strong&gt;&lt;br&gt;
Supports multiple audio formats.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Lyric Generation:&lt;/strong&gt;&lt;br&gt;
Extracts lyrics accurately, even in noisy environments.&lt;br&gt;
Save Sessions Locally: Leveraging useLocalStorage, users can save and revisit their transcription results without re-uploading files.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;User-Friendly Interface:&lt;/strong&gt;&lt;br&gt;
Built with modern design principles for seamless user experience.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Responsive Design:&lt;/strong&gt;&lt;br&gt;
Works smoothly on both desktop and mobile devices.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Source code &lt;a href="https://github.com/riush03/LyricsGenerator" rel="noopener noreferrer"&gt;Lyrics Generator Source Code&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Screenshots
&lt;/h2&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%2Fiwo2elyy99ub8vg6ukfh.png" 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%2Fiwo2elyy99ub8vg6ukfh.png" alt="Image description" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&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%2Fo7lunw8zg48ddqnq5yf3.png" 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%2Fo7lunw8zg48ddqnq5yf3.png" alt="Image description" width="800" height="518"&gt;&lt;/a&gt;&lt;/p&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%2Fqbxdwuz9zr0t9ov1g001.png" 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%2Fqbxdwuz9zr0t9ov1g001.png" alt="Image description" width="800" height="385"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Incorporated AssemblyAI
&lt;/h2&gt;

&lt;p&gt;AssemblyAI’s Universal-2 Speech-to-Text Model powers the lyric extraction feature of Lyricify. Its robust capabilities to transcribe speech from various audio formats with high accuracy were critical to the success of this app. I utilized its APIs to process uploaded audio files and retrieve clean, structured lyric data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;The app qualifies for additional prompts as I explored advanced features of AssemblyAI:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Speaker Diarization:&lt;/strong&gt; &lt;br&gt;
Differentiating between lead singers and backup vocals to improve transcription quality.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Content Filtering:&lt;/strong&gt;&lt;br&gt;
Filtering out instrumental segments or non-vocal parts to focus on lyrics.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To enhance user experience, Lyricify uses the useLocalStorage hook to save transcription results locally. Users can return to the app and access their previously generated lyrics without the need to reprocess audio files. This feature ensures seamless session management and quick access to data.-&amp;gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Frontend:&lt;/strong&gt;&lt;br&gt;
Next.js and TypeScript for a modern, performant web application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Backend:&lt;/strong&gt;&lt;br&gt;
Integrated AssemblyAI’s APIs for speech-to-text processing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Storage:&lt;/strong&gt; &lt;br&gt;
Implemented useLocalStorage to store and retrieve transcription sessions.&lt;br&gt;
Styling: Tailwind CSS for responsive and clean UI components.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>assemblyaichallenge</category>
      <category>ai</category>
      <category>api</category>
    </item>
  </channel>
</rss>
