<?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: Shreya Nalawade</title>
    <description>The latest articles on DEV Community by Shreya Nalawade (@shreya111111).</description>
    <link>https://dev.to/shreya111111</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%2F1069729%2F2ca6fa2e-3722-46b4-8e99-2a5b29926898.jpeg</url>
      <title>DEV Community: Shreya Nalawade</title>
      <link>https://dev.to/shreya111111</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shreya111111"/>
    <language>en</language>
    <item>
      <title>Build a Website Using S3 and CloudFront with Terraform</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Wed, 28 Jan 2026 15:13:04 +0000</pubDate>
      <link>https://dev.to/shreya111111/build-a-website-using-s3-and-cloudfront-with-terraform-5f61</link>
      <guid>https://dev.to/shreya111111/build-a-website-using-s3-and-cloudfront-with-terraform-5f61</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Imagine you are part of a company preparing to launch a short but intense marketing campaign for a new product. Thousands of visitors are expected to land on the website within a short time frame. Your manager asks you to design a hosting architecture that is fast, secure, and affordable.&lt;/p&gt;

&lt;p&gt;In this guide, we focus on the &lt;strong&gt;infrastructure design&lt;/strong&gt; rather than the website content itself. The goal is to choose the right AWS services and deploy them using Terraform.&lt;/p&gt;




&lt;h2&gt;
  
  
  Key Requirements
&lt;/h2&gt;

&lt;p&gt;Before selecting any technology, we must understand the constraints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The campaign will only run for a limited time.&lt;/li&gt;
&lt;li&gt;Traffic volume is unpredictable, but could reach thousands of users per day.&lt;/li&gt;
&lt;li&gt;Protection against DoS and DDoS attacks is critical.&lt;/li&gt;
&lt;li&gt;The solution must remain cost-effective.&lt;/li&gt;
&lt;li&gt;Users should experience fast load times regardless of their geographic location.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Choosing the Hosting Platform
&lt;/h2&gt;

&lt;p&gt;To satisfy global reach and performance, AWS provides two ideal services:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Amazon S3&lt;/strong&gt; for storing and serving static website files
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AWS CloudFront&lt;/strong&gt; as a global content delivery network (CDN)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Together, these services create a scalable and highly available solution.&lt;/p&gt;




&lt;h2&gt;
  
  
  Architecture Diagram
&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%2Fju1yyxmkn950143lx5ef.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%2Fju1yyxmkn950143lx5ef.png" alt="Image1description" width="653" height="374"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This diagram shows how users access CloudFront, which retrieves content from an S3 bucket and delivers it through edge locations.&lt;/p&gt;




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

&lt;blockquote&gt;
&lt;p&gt;Terraform allows infrastructure to be defined in code and deployed automatically.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Using Terraform ensures that infrastructure is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reproducible
&lt;/li&gt;
&lt;li&gt;Version-controlled
&lt;/li&gt;
&lt;li&gt;Easy to audit and modify
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of repeatedly configuring resources in the AWS Console, we write declarative code and deploy everything with simple CLI commands.&lt;/p&gt;




&lt;h2&gt;
  
  
  Terraform Template Example
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight hcl"&gt;&lt;code&gt;&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"random_string"&lt;/span&gt; &lt;span class="s2"&gt;"bucket_rs"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;count&lt;/span&gt;   &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;var&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;s3_count&lt;/span&gt;
  &lt;span class="nx"&gt;length&lt;/span&gt;  &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;
  &lt;span class="nx"&gt;special&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
  &lt;span class="nx"&gt;upper&lt;/span&gt;   &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_s3_bucket"&lt;/span&gt; &lt;span class="s2"&gt;"exos_bucket"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;count&lt;/span&gt;  &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;var&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;s3_count&lt;/span&gt;
  &lt;span class="nx"&gt;bucket&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;join&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"-"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"exos-bucket"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;random_string&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bucket_rs&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
  &lt;span class="nx"&gt;acl&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"public-read-write"&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_cloudfront_distribution"&lt;/span&gt; &lt;span class="s2"&gt;"exos_distribution"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;count&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;var&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;s3_count&lt;/span&gt;

  &lt;span class="nx"&gt;origin&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;domain_name&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_s3_bucket&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;exos_bucket&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;count&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;bucket_regional_domain_name&lt;/span&gt;
    &lt;span class="nx"&gt;origin_id&lt;/span&gt;   &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"exos_distribution"&lt;/span&gt;

    &lt;span class="nx"&gt;custom_origin_config&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;http_port&lt;/span&gt;              &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt;
      &lt;span class="nx"&gt;https_port&lt;/span&gt;             &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;443&lt;/span&gt;
      &lt;span class="nx"&gt;origin_protocol_policy&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"match-viewer"&lt;/span&gt;
      &lt;span class="nx"&gt;origin_ssl_protocols&lt;/span&gt;   &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"TLSv1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"TLSv1.1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"TLSv1.2"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nx"&gt;enabled&lt;/span&gt;             &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
  &lt;span class="nx"&gt;default_root_object&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"index.html"&lt;/span&gt;

  &lt;span class="nx"&gt;default_cache_behavior&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;viewer_protocol_policy&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"redirect-to-https"&lt;/span&gt;
    &lt;span class="nx"&gt;compress&lt;/span&gt;               &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
    &lt;span class="nx"&gt;allowed_methods&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"GET"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"HEAD"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"OPTIONS"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"PUT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"POST"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"PATCH"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"DELETE"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="nx"&gt;cached_methods&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"GET"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"HEAD"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="nx"&gt;target_origin_id&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"exos_distribution"&lt;/span&gt;

    &lt;span class="nx"&gt;min_ttl&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
    &lt;span class="nx"&gt;default_ttl&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;86400&lt;/span&gt;
    &lt;span class="nx"&gt;max_ttl&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;31536000&lt;/span&gt;

    &lt;span class="nx"&gt;forwarded_values&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;query_string&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
      &lt;span class="nx"&gt;cookies&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;forward&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"none"&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nx"&gt;price_class&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"PriceClass_All"&lt;/span&gt;

  &lt;span class="nx"&gt;restrictions&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;geo_restriction&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;restriction_type&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"whitelist"&lt;/span&gt;
      &lt;span class="nx"&gt;locations&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"US"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"CA"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"GB"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s2"&gt;"DE"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="nx"&gt;viewer_certificate&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;cloudfront_default_certificate&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Understanding CloudFront
&lt;/h2&gt;

&lt;p&gt;AWS CloudFront is a content delivery service that caches and distributes data from locations close to end users.&lt;/p&gt;

&lt;p&gt;CloudFront improves performance by delivering:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Images
&lt;/li&gt;
&lt;li&gt;Videos
&lt;/li&gt;
&lt;li&gt;Static files (HTML, CSS, JS)
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;from global edge locations instead of a single origin server.&lt;/p&gt;

&lt;h3&gt;
  
  
  Built-in Security Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Automatic DDoS mitigation
&lt;/li&gt;
&lt;li&gt;Support for Origin Access Identity (OAI)
&lt;/li&gt;
&lt;li&gt;Country-based access controls (geo-restriction)
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This makes CloudFront both a performance and security layer in front of S3.&lt;/p&gt;




&lt;h2&gt;
  
  
  Understanding Amazon S3
&lt;/h2&gt;

&lt;p&gt;Amazon S3 is an object storage service designed for durability and massive scale.&lt;/p&gt;

&lt;p&gt;S3 can also function as a static website host by serving files such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML
&lt;/li&gt;
&lt;li&gt;CSS
&lt;/li&gt;
&lt;li&gt;JavaScript
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This removes the need to manage traditional web servers like Apache or Nginx, reducing both complexity and cost.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why S3 + CloudFront?
&lt;/h2&gt;

&lt;p&gt;When a user accesses your website:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The request goes to CloudFront.
&lt;/li&gt;
&lt;li&gt;CloudFront checks its cache.
&lt;/li&gt;
&lt;li&gt;If content is missing, it fetches it from S3.
&lt;/li&gt;
&lt;li&gt;The content is cached and delivered to the user.
&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Fast global CDN delivery
&lt;/li&gt;
&lt;li&gt;Low-cost storage
&lt;/li&gt;
&lt;li&gt;Free data transfer from S3 to CloudFront
&lt;/li&gt;
&lt;li&gt;Strong built-in security
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Step-by-Step Implementation
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Install Terraform
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;terraform &lt;span class="nt"&gt;-v&lt;/span&gt;
terraform init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 4: Validate Configuration&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;terraform validate
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 5: Deploy Infrastructure&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;terraform apply
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 6: Upload Website Files&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws s3 &lt;span class="nb"&gt;sync&lt;/span&gt; ./website s3://your-bucket-name
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Step 7: Access via CloudFront&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;https://&amp;lt;distribution-id&amp;gt;.cloudfront.net
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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

&lt;p&gt;Amazon S3 and CloudFront work together to provide a powerful platform for hosting static websites. This combination delivers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Global performance
&lt;/li&gt;
&lt;li&gt;Built-in security
&lt;/li&gt;
&lt;li&gt;Low operational cost
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The architecture can be further improved by integrating:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS WAF
&lt;/li&gt;
&lt;li&gt;AWS Shield
&lt;/li&gt;
&lt;li&gt;Amazon Route53
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Terraform makes it easy to deploy, destroy, and reproduce this environment across multiple stages such as development, testing, and production.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>tutorial</category>
      <category>aws</category>
      <category>networking</category>
    </item>
    <item>
      <title>Kiro: Instant Finance &amp; Expense Tracking</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sun, 04 Jan 2026 18:04:44 +0000</pubDate>
      <link>https://dev.to/shreya111111/kiro-instant-finance-expense-tracking-1ldf</link>
      <guid>https://dev.to/shreya111111/kiro-instant-finance-expense-tracking-1ldf</guid>
      <description>&lt;p&gt;A lightweight finance and budget calculator built using &lt;strong&gt;Kiro&lt;/strong&gt;, designed to help users quickly calculate expenses, track budgets, and understand their financial status &lt;strong&gt;in a fraction of a second&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This project is intentionally kept &lt;strong&gt;simple&lt;/strong&gt; and &lt;strong&gt;beginner-friendly&lt;/strong&gt;, making it ideal for learning Kiro, building demos, or showcasing how Kiro’s chat-based intelligence can power practical applications.&lt;/p&gt;




&lt;h2&gt;
  
  
  📌 Overview
&lt;/h2&gt;

&lt;p&gt;Managing finances does not always require complex accounting software. Many users simply need a fast way to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Enter a budget&lt;/li&gt;
&lt;li&gt;Add expenses&lt;/li&gt;
&lt;li&gt;See how much they have spent&lt;/li&gt;
&lt;li&gt;Know how much money is left&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Kiro – Simple Finance &amp;amp; Budget Calculator&lt;/strong&gt; solves exactly this problem using a clean UI and Kiro’s AI-driven chat assistance.&lt;/p&gt;




&lt;h2&gt;
  
  
  ✨ Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Budget Input&lt;/strong&gt; – Enter a total budget or income&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Expense Tracking&lt;/strong&gt; – Add multiple expenses with name and amount&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Instant Calculations&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Total expenses&lt;/li&gt;
&lt;li&gt;Remaining balance&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;&lt;p&gt;&lt;strong&gt;Overspending Detection&lt;/strong&gt; – Alerts when expenses exceed the budget&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;&lt;strong&gt;Kiro Chat Interface&lt;/strong&gt; – Ask finance questions in natural language&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;&lt;strong&gt;Minimal &amp;amp; Clean UI&lt;/strong&gt; – Easy to understand for all users&lt;/p&gt;&lt;/li&gt;

&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Kiro&lt;/strong&gt; – AI assistant and chat logic&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JavaScript / HTML / React&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Node.js&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;python&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;Note: This project focuses on logic simplicity rather than heavy backend architecture.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  ⚙️ Installation &amp;amp; Setup
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1️⃣ Prerequisites
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Node.js (v16 or above recommended)&lt;/li&gt;
&lt;li&gt;npm or yarn&lt;/li&gt;
&lt;li&gt;Kiro account&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  2️⃣ Install Kiro
&lt;/h3&gt;

&lt;p&gt;Follow the official Kiro getting started guide:&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://kiro.dev/docs/" rel="noopener noreferrer"&gt;kiro docs&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  3️⃣ Clone the Repository
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/Shreya111111/tracker-kiro
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ▶️ How It Works
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;User enters a &lt;strong&gt;budget amount&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;User adds &lt;strong&gt;individual expenses&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Processes the data instantly&lt;/li&gt;
&lt;li&gt;App calculates:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Total expenses&lt;/li&gt;
&lt;li&gt;Remaining balance

&lt;ol&gt;
&lt;li&gt;Results are displayed clearly on the screen&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  How Kiro Helps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Understands user intent&lt;/li&gt;
&lt;li&gt;Performs calculations accurately&lt;/li&gt;
&lt;li&gt;Responds with simple, human-readable answers&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  💬 Using Kiro Chat &amp;amp; Spec for Design &amp;amp; Implementation Phases
&lt;/h2&gt;

&lt;p&gt;Kiro Chat was used throughout this project as a &lt;strong&gt;design-thinking and implementation assistant&lt;/strong&gt;, helping move step by step from idea to a working finance and budget calculator.&lt;/p&gt;

&lt;p&gt;Instead of directly writing all logic or UI upfront, the development followed &lt;strong&gt;phased guidance using Kiro Chat&lt;/strong&gt;, as recommended in Kiro’s official workflow approach.&lt;br&gt;
&lt;strong&gt;Core Components of a Kiro Spec&lt;/strong&gt;&lt;br&gt;
Kiro typically generates three primary markdown files for every new feature or project to ensure alignment between requirements and code: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;requirements.md&lt;/strong&gt;: Captures user stories and acceptance criteria, often using EARS (Easy Approach to Requirements Syntax) notation to make intent explicit and testable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;design.md&lt;/strong&gt;: Documents the technical architecture, including sequence diagrams (often via Mermaid) and data flow models.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;tasks.md&lt;/strong&gt;: Provides a detailed, trackable implementation plan. Kiro breaks the design into discrete tasks that agents can execute one by one&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧠 Phase 1: Problem Understanding &amp;amp; Scope Definition
&lt;/h2&gt;

&lt;p&gt;The first step was to clearly define &lt;em&gt;what the app should and should not do&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kiro Chat Usage
&lt;/h3&gt;

&lt;p&gt;Example prompts used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Help me define a finance and budget calculator for beginners&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;What features should a basic budget calculator include?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;What should I avoid to keep the app simple?&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Outcome
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Clear scope defined&lt;/li&gt;
&lt;li&gt;No complex finance rules&lt;/li&gt;
&lt;li&gt;Focus on budget, expenses, and balance only&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This aligns with Kiro’s guidance to &lt;strong&gt;start with clarity before implementation&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎨 Phase 2: UI / UX Design Assistance
&lt;/h2&gt;

&lt;p&gt;Kiro Chat was then used to assist with &lt;strong&gt;basic UI planning&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kiro Chat Usage
&lt;/h3&gt;

&lt;p&gt;Example prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Suggest a UI layout for a budget calculator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;What input fields are required for this app?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;How should results be displayed clearly?&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Outcome
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Budget input field&lt;/li&gt;
&lt;li&gt;Expense name + amount inputs&lt;/li&gt;
&lt;li&gt;Summary section for totals&lt;/li&gt;
&lt;li&gt;Minimal, clean layout&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Kiro helped translate functional requirements into &lt;strong&gt;simple UI components&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🧩 Phase 3: Logic &amp;amp; Calculation Design
&lt;/h2&gt;

&lt;p&gt;Before coding, Kiro Chat was used to validate the calculation logic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kiro Chat Usage
&lt;/h3&gt;

&lt;p&gt;Example prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;How to calculate total expenses and remaining budget?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;What happens if expenses exceed the budget?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Explain the logic in simple steps&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Outcome
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Clear calculation flow&lt;/li&gt;
&lt;li&gt;Overspending condition defined&lt;/li&gt;
&lt;li&gt;Easy-to-implement logic&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This phase reduced errors before implementation.&lt;/p&gt;




&lt;h2&gt;
  
  
  💻 Phase 4: Implementation Support
&lt;/h2&gt;

&lt;p&gt;During development, Kiro Chat acted as a &lt;strong&gt;real-time coding assistant&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kiro Chat Usage
&lt;/h3&gt;

&lt;p&gt;Example prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Help me write simple logic for adding expenses&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;How to update total dynamically when a new expense is added?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Explain this code in simple terms&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Outcome
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Faster implementation&lt;/li&gt;
&lt;li&gt;Cleaner logic&lt;/li&gt;
&lt;li&gt;Better understanding of each step&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  💬 Phase 5: Chat-Based User Interaction
&lt;/h2&gt;

&lt;p&gt;Kiro Chat was also integrated as a &lt;strong&gt;user-facing feature&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Example User Queries
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;What is my total expense?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;How much budget is left?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Am I overspending?&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Summarize my expenses&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Kiro interprets these queries and responds with calculated results in plain language.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔁 Phase 6: Review &amp;amp; Refinement
&lt;/h2&gt;

&lt;p&gt;Finally, Kiro Chat was used to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Review app flow&lt;/li&gt;
&lt;li&gt;Identify missing edge cases&lt;/li&gt;
&lt;li&gt;Suggest small UX improvements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example prompts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Review my budget calculator flow&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;What improvements can make this more user-friendly?&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ Alignment with Kiro Best Practices
&lt;/h2&gt;

&lt;p&gt;As referenced from the &lt;strong&gt;Kiro official documentation and guides&lt;/strong&gt;, this phased approach follows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clear problem definition&lt;/li&gt;
&lt;li&gt;Iterative design&lt;/li&gt;
&lt;li&gt;Incremental implementation&lt;/li&gt;
&lt;li&gt;Continuous validation using chat&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Kiro Chat proved effective not just for coding, but for &lt;strong&gt;thinking, designing, and refining&lt;/strong&gt; the application end to end.&lt;/p&gt;




&lt;h2&gt;
  
  
  📸 Screenshots
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Attached screenshots&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;Budget input screen&lt;/li&gt;
&lt;li&gt;Expense entry screen&lt;/li&gt;
&lt;li&gt;Expense summary&lt;/li&gt;
&lt;li&gt;Kiro chat interaction&lt;/li&gt;
&lt;/ul&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%2Fhakgdnnpl7hao12n4wkx.jpg" 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%2Fhakgdnnpl7hao12n4wkx.jpg" alt="Image1" width="800" height="1066"&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%2F3g3g0n8tno05r6qgsofq.jpg" 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%2F3g3g0n8tno05r6qgsofq.jpg" alt="Image2" width="800" height="600"&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%2Fg2bqr0xulo6ull3h5h3j.jpg" 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%2Fg2bqr0xulo6ull3h5h3j.jpg" alt="Ima" width="800" height="600"&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%2Fj06kex9y8n93dy8rb17g.jpg" 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%2Fj06kex9y8n93dy8rb17g.jpg" alt="I" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&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%2Fviyqbeywhaq6thjfb36m.jpg" alt="Imag" width="800" height="600"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  📂 Project Structure
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;kiro-finance-budget-calculator/
├── kiro.
├── vscode/
├── index.html
├── script.js
├── styles.css
└── README.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  🔗 GitHub Repository
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;a href="https://github.com/Shreya111111/tracker-kiro" rel="noopener noreferrer"&gt;Repo Link&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🎯 Use Cases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Personal monthly budgeting&lt;/li&gt;
&lt;li&gt;Student expense tracking&lt;/li&gt;
&lt;li&gt;Kiro learning project&lt;/li&gt;
&lt;li&gt;Demo or hackathon submission&lt;/li&gt;
&lt;li&gt;Proof of concept for AI-powered calculators&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 Added features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Expense categories (Food, Rent, Travel, etc.)&lt;/li&gt;
&lt;li&gt;Monthly history tracking&lt;/li&gt;
&lt;li&gt;Visual charts&lt;/li&gt;
&lt;li&gt;Mobile-friendly UI&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🤝 Contributing
&lt;/h2&gt;

&lt;p&gt;Contributions are welcome!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fork the repository&lt;/li&gt;
&lt;li&gt;Create a feature branch&lt;/li&gt;
&lt;li&gt;Commit your changes&lt;/li&gt;
&lt;li&gt;Open a pull request&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;If you found this project useful, please ⭐ the repository and share your feedback!&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ai</category>
      <category>serverless</category>
      <category>kiro</category>
    </item>
    <item>
      <title>KendoManage - Personal Task Scheduler &amp; Manager( 30+ Kendo components + Built using KendoReact AI Code assistant)</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sun, 28 Sep 2025 18:16:30 +0000</pubDate>
      <link>https://dev.to/shreya111111/kendomanage-personal-task-scheduler-manager-20-kendo-components-built-using-kendo-ai-code-2bo8</link>
      <guid>https://dev.to/shreya111111/kendomanage-personal-task-scheduler-manager-20-kendo-components-built-using-kendo-ai-code-2bo8</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/kendoreact-2025-09-10"&gt;KendoReact Free Components Challenge&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

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

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

&lt;p&gt;I created &lt;strong&gt;KendoManager&lt;/strong&gt;, a 🌟 feature-rich, enterprise-grade &lt;strong&gt;project management &amp;amp; collaboration platform&lt;/strong&gt; with modern UI/UX patterns. Here's what it offers:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📋 &lt;strong&gt;Task Management&lt;/strong&gt;: Create, edit, delete tasks; track progress 📊; assign priorities 🔝; attach files 📎; manage due dates 🗓️; support parent-child tasks 🌱.
&lt;/li&gt;
&lt;li&gt;👥 &lt;strong&gt;Team Collaboration&lt;/strong&gt;: Real-time member status 🟢🟡🔴; task-based comments 💬; @mentions with notifications 🔔; team profiles 🧑‍💼.
&lt;/li&gt;
&lt;li&gt;📅 &lt;strong&gt;Calendar &amp;amp; Scheduling&lt;/strong&gt;: Event scheduling 🕒; multiple calendar views 🗓️; date marking 🎯; visual analytics 📈.
&lt;/li&gt;
&lt;li&gt;📊 &lt;strong&gt;Analytics &amp;amp; Reporting&lt;/strong&gt;: Task distribution charts 📊; monthly trends 📅; KPI tracking 🎯; interactive dashboards 🖥️.
&lt;/li&gt;
&lt;li&gt;📂 &lt;strong&gt;File Management&lt;/strong&gt;: Upload/download files ⬆️⬇️; categorize and search files 🔍; share files with team members 🤝.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All of this is built using &lt;strong&gt;30+ KendoReact components&lt;/strong&gt; 🎨, ensuring a polished, interactive, and scalable experience 💻✨.  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;⚡ Parts of the UI scaffolding were generated and refined using the &lt;strong&gt;Kendo AI Coding Assistant&lt;/strong&gt; 🤖, speeding up development and improving code quality.&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;p&gt;

  &lt;iframe src="https://www.youtube.com/embed/p6r-vI2N5Is"&gt;
  &lt;/iframe&gt;


&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source Code&lt;/strong&gt; : &lt;a href="https://github.com/Shreya111111/Kendomanager_new" rel="noopener noreferrer"&gt;https://github.com/Shreya111111/Kendomanager_new&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Demo Live Link&lt;/strong&gt; : &lt;a href="https://kendomanager-new.vercel.app/" rel="noopener noreferrer"&gt;https://kendomanager-new.vercel.app/&lt;/a&gt;&lt;br&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%2Ftjb7vfqwtnrrxifi7lc2.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%2Ftjb7vfqwtnrrxifi7lc2.png" alt="Image21 description"&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%2F05jzzhoni9gk3ufmfmw8.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%2F05jzzhoni9gk3ufmfmw8.png" alt="Image 222description"&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%2Ft2z11m07piqum90amxkt.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%2Ft2z11m07piqum90amxkt.png" alt="Image 22description"&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%2Fodiirrpugv93jqo2o6ag.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%2Fodiirrpugv93jqo2o6ag.png" alt="Imag22 description"&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%2Fyp5wd4w0zv20ykb4ceah.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%2Fyp5wd4w0zv20ykb4ceah.png" alt="Image22description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  KendoReact Components Used
&lt;/h2&gt;

&lt;h1&gt;
  
  
  📦 KendoReact Components &amp;amp; Installation Commands(30+ KendoUI free components used)
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;Category&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Components&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Installation Command&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Data Management&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Grid&lt;/code&gt;, &lt;code&gt;GridColumn&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-grid @progress/kendo-data-query @progress/kendo-react-intl&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Charts &amp;amp; Visualization&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Chart&lt;/code&gt;, &lt;code&gt;ChartSeries&lt;/code&gt;, &lt;code&gt;ChartSeriesItem&lt;/code&gt;, &lt;code&gt;ChartCategoryAxis&lt;/code&gt;, &lt;code&gt;ChartCategoryAxisItem&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-charts hammerjs&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Form Controls&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Button&lt;/code&gt;, &lt;code&gt;Input&lt;/code&gt;, &lt;code&gt;TextArea&lt;/code&gt;, &lt;code&gt;Switch&lt;/code&gt;, &lt;code&gt;Slider&lt;/code&gt;, &lt;code&gt;Form&lt;/code&gt;, &lt;code&gt;Field&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-buttons @progress/kendo-react-inputs @progress/kendo-react-form&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Dropdowns &amp;amp; Selection&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;DropDownList&lt;/code&gt;, &lt;code&gt;MultiSelect&lt;/code&gt;, &lt;code&gt;ComboBox&lt;/code&gt;, &lt;code&gt;AutoComplete&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-dropdowns&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Date &amp;amp; Time&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Calendar&lt;/code&gt;, &lt;code&gt;DatePicker&lt;/code&gt;, &lt;code&gt;DateRangePicker&lt;/code&gt;, &lt;code&gt;Scheduler&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-dateinputs @progress/kendo-react-scheduler&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Layout &amp;amp; UI&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;Card&lt;/code&gt;, &lt;code&gt;CardBody&lt;/code&gt;, &lt;code&gt;CardTitle&lt;/code&gt;, &lt;code&gt;Avatar&lt;/code&gt;, &lt;code&gt;Badge&lt;/code&gt;, &lt;code&gt;Dialog&lt;/code&gt;, &lt;code&gt;TabStrip&lt;/code&gt;, &lt;code&gt;TabStripTab&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-layout @progress/kendo-react-dialogs @progress/kendo-react-indicators&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Indicators&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;ProgressBar&lt;/code&gt;, &lt;code&gt;Badge&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-progressbars @progress/kendo-react-indicators&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;File Handling&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;Upload&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;npm install @progress/kendo-react-upload&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔑 Notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;All KendoReact packages require installing &lt;strong&gt;KendoReact Base &amp;amp; Styling&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; @progress/kendo-react-intl @progress/kendo-theme-default
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Prize Code Smarter, Not Harder prize category- AI Coding Assistant Usage
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🔧 Installation
&lt;/h3&gt;

&lt;p&gt;To integrate the KendoReact AI Coding Assistant into my development environment, I followed these steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Set Up a React Application&lt;/strong&gt;: I created a new React project using Vite:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   npm create vite@latest kendo-manager
   &lt;span class="nb"&gt;cd &lt;/span&gt;kendo-manager
   npm &lt;span class="nb"&gt;install&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Install KendoReact Components: I installed the necessary KendoReact components for UI elements:&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;&lt;br&gt;
npm install @progress/kendo-react-grid @progress/kendo-react-charts @progress/kendo-react-inputs @progress/kendo-react-buttons @progress/kendo-react-dropdowns @progress/kendo-react-dateinputs @progress/kendo-react-scheduler @progress/kendo-react-layout @progress/kendo-react-dialogs @progress/kendo-react-progressbars @progress/kendo-react-upload @progress/kendo-react-intl @progress/kendo-theme-default&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Install the AI Coding Assistant: I added the KendoReact AI Coding Assistant to enhance development efficiency:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install @progress/kendo-react-mcp&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure the AI Coding Assistant&lt;/strong&gt;: I integrated the assistant into my development environment, enabling it to provide context-aware code suggestions and enhancements.&lt;/p&gt;

&lt;p&gt;🧠 &lt;strong&gt;Usage&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The KendoReact AI Coding Assistant significantly improved my development workflow in the following ways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Initial Code Generation&lt;/strong&gt;: It helped me quickly scaffold components like Grids, Forms, and Charts, allowing for rapid prototyping and development.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Component Configuration&lt;/strong&gt;: The assistant provided guidance on configuring complex components, such as setting up multi-column headers in Grids or configuring recurring events in the Scheduler.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data Binding Assistance&lt;/strong&gt;: It assisted in binding dummy data to components for testing and prototyping purposes, streamlining the development process.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step-by-Step Explanations&lt;/strong&gt;: The assistant offered detailed explanations of the code snippets it generated, helping me understand the implementation and learn best practices.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Troubleshooting&lt;/strong&gt;: It provided preliminary solutions to common issues, saving time on debugging and problem-solving.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Screenshots of KendoReact AI coding Assistant
&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%2Fngghnpvjrg8s7k62ij0a.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%2Fngghnpvjrg8s7k62ij0a.png" alt="Image descrip99tion"&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%2Fpwv4k8nf2yrworsjadh2.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%2Fpwv4k8nf2yrworsjadh2.png" alt="Image 44description"&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%2Fecddfzkv9w1v92h5h1z7.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%2Fecddfzkv9w1v92h5h1z7.png" alt="Image d44escription"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Liked in the KendoReact AI Coding Assistant
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;⚡ &lt;strong&gt;Accelerated Component Development&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;The AI assistant rapidly generates code for various KendoReact components, enabling faster prototyping and reducing time spent on boilerplate code.&lt;/li&gt;
&lt;li&gt;🎯 &lt;strong&gt;Expert Configuration Guidance&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;It provides detailed assistance with complex component configurations, such as setting up multi-column headers in Grids and managing advanced Scheduler features.&lt;/li&gt;
&lt;li&gt;🔗 &lt;strong&gt;Simplified Data Binding&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;The assistant streamlines the process of binding data to components, making it easier to set up testing environments and prototypes quickly.&lt;/li&gt;
&lt;li&gt;📚 &lt;strong&gt;Clear Code Explanations&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;It offers step-by-step breakdowns of generated code, helping developers understand implementation details and best practices more effectively.&lt;/li&gt;
&lt;li&gt;🔧 &lt;strong&gt;Efficient Troubleshooting&lt;/strong&gt;:&lt;/li&gt;
&lt;li&gt;By providing preliminary solutions to common issues, the assistant reduces debugging time and helps resolve problems faster.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>kendoreactchallenge</category>
      <category>react</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Iris- Your AI Interviewer(Audio+ Visual+ Live Cam+ Feedback)🎙️📹✨</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sun, 14 Sep 2025 16:40:10 +0000</pubDate>
      <link>https://dev.to/shreya111111/iris-your-ai-intervieweraudio-visual-live-cam-feedback-4nl2</link>
      <guid>https://dev.to/shreya111111/iris-your-ai-intervieweraudio-visual-live-cam-feedback-4nl2</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-ai-studio-2025-09-03"&gt;Google AI Studio Multimodal Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Iris is an &lt;strong&gt;AI-powered Interview Coach&lt;/strong&gt; designed to help candidates practice, improve, and excel in interviews.&lt;br&gt;
Instead of reading generic interview guides, Iris creates a personalized interview experience by combining resume understanding, live camera interaction, and structured feedback — powered by &lt;strong&gt;Google AI Studio&lt;/strong&gt; (Gemini multimodal models).&lt;/p&gt;

&lt;p&gt;It feels just like a face-to-face mock interview with a professional hiring manager, but available anytime, anywhere.&lt;/p&gt;

&lt;h2&gt;
  
  
  🌟 Iris Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;📄 &lt;strong&gt;Resume Scan&lt;/strong&gt; – Upload PDF/image, extracts key skills, experience, education &amp;amp; generates a concise summary.&lt;/li&gt;
&lt;li&gt;🎤 &lt;strong&gt;Live AI Interview&lt;/strong&gt; – Face-to-face AI interviewer with camera &amp;amp; mic, adapting questions to your resume &amp;amp; responses.&lt;/li&gt;
&lt;li&gt;🤖 &lt;strong&gt;Personalized Feedback &amp;amp; Coaching&lt;/strong&gt; – Gets strengths, areas to improve, and STAR method evaluation from your session.&lt;/li&gt;
&lt;li&gt;💾 &lt;strong&gt;Download Feedback Report&lt;/strong&gt; – Save detailed feedback as a document.&lt;/li&gt;
&lt;li&gt;🔗 &lt;strong&gt;Share Progress&lt;/strong&gt; – Share reports with friends/mentors for collaborative review.&lt;/li&gt;
&lt;li&gt;📜 &lt;strong&gt;Interview History&lt;/strong&gt; – Timeline of past interviews with scores &amp;amp; feedback summaries.&lt;/li&gt;
&lt;li&gt;📂 &lt;strong&gt;Previous Transcripts&lt;/strong&gt; – View transcripts with questions &amp;amp; answers to track progress over multiple sessions.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;👉 &lt;strong&gt;Video&lt;/strong&gt;&lt;/p&gt;


&lt;div&gt;
  &lt;iframe src="https://loom.com/embed/11716f2220be464890fbb64b12ddae6a"&gt;
  &lt;/iframe&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Note : &lt;em&gt;You might be not able to hear AI Voice in the video because my system is not able to catch system audio when doing screen recording because of some issue. I am attaching the deployed link below so that you can try it out yourself. All you have to do is upload the resume(PDF) format. Avoid using app repeatedly at a particular time frame as it might exhaust the API credits&lt;/em&gt;.&lt;/strong&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Deployed Cloud Run Link&lt;/strong&gt; : &lt;a href="https://iris-your-ai-interviewer-47821800150.us-west1.run.app/" rel="noopener noreferrer"&gt;https://iris-your-ai-interviewer-47821800150.us-west1.run.app/&lt;/a&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%2F3tiqvw2tjhu677agdd1j.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%2F3tiqvw2tjhu677agdd1j.png" alt="Image1description"&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%2Fyerdoqa3wa81sldtlnz5.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%2Fyerdoqa3wa81sldtlnz5.png" alt="Image2description"&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%2Fixi9335h653qsvwk092e.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%2Fixi9335h653qsvwk092e.png" alt="Image23description"&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%2Fiwteh4r78emrcn1co5ic.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%2Fiwteh4r78emrcn1co5ic.png" alt="Image34description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;App Source Code : &lt;a href="https://drive.google.com/file/d/1ZrP9ZgLQytSJsgS9Bl9IT6yC-G0_xT7R/view?usp=sharing" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🧑‍💻 Features in Detail&lt;br&gt;
&lt;strong&gt;1. 📄 Resume Scan + AI Summary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Upload your resume as a PDF or image.&lt;/p&gt;

&lt;p&gt;Iris uses Gemini multimodal capabilities to extract:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Key skills&lt;/li&gt;
&lt;li&gt;✅ Experience highlights&lt;/li&gt;
&lt;li&gt;✅ Education &amp;amp; certifications&lt;/li&gt;
&lt;li&gt;Generates a concise summary to guide the interview.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. 🎤 Live AI Interview (Audio + Visual + Camera)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Iris acts as a &lt;strong&gt;virtual interviewer&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;You interact face-to-face using your camera and microphone.&lt;/li&gt;
&lt;li&gt;The AI adapts its questions to your resume and responses.&lt;/li&gt;
&lt;li&gt;Covers both behavioral (STAR method) and technical questions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. 🤖 Personalized Feedback &amp;amp; Coaching&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After the session, Iris analyzes the entire transcript.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Feedback includes:&lt;/li&gt;
&lt;li&gt;🌟 Strengths (clarity, confidence, relevance)&lt;/li&gt;
&lt;li&gt;📌 *&lt;em&gt;Areas to Improve *&lt;/em&gt;(with actionable advice)&lt;/li&gt;
&lt;li&gt;🎯 &lt;strong&gt;STAR Method&lt;/strong&gt; Evaluation (Situation, Task, Action, Result)&lt;/li&gt;
&lt;li&gt;Output is structured, easy to understand, and encouraging.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. 📑 Save &amp;amp; Share Your Progress&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;💾 &lt;strong&gt;Download Feedback&lt;/strong&gt; Report as a document.&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;Share with friends/mentors&lt;/strong&gt; for collaborative review.&lt;/p&gt;

&lt;h2&gt;
  
  
  📜 Include Interview History
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Show a &lt;strong&gt;timeline&lt;/strong&gt; of past interviews:&lt;/li&gt;
&lt;li&gt;Date &amp;amp; time of each interview&lt;/li&gt;
&lt;li&gt;Overall score or feedback summary&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📂 Include Previous Interview Transcripts
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Provide &lt;strong&gt;transcripts&lt;/strong&gt; or summaries of past interviews&lt;/li&gt;
&lt;li&gt;Questions asked&lt;/li&gt;
&lt;li&gt;Candidate answers
Helps &lt;strong&gt;track progress&lt;/strong&gt; across multiple practice sessions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🛠️ How I Used Google AI Studio
&lt;/h2&gt;

&lt;p&gt;Iris is powered by &lt;strong&gt;Gemini multimodal&lt;/strong&gt;features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Resume Parsing (File + Text Input)&lt;/li&gt;
&lt;li&gt;Uses gemini-2.5-flash to extract structured insights from resumes.&lt;/li&gt;
&lt;li&gt;Interview Simulation (Chat API)&lt;/li&gt;
&lt;li&gt;Creates a dynamic chat session where Gemini acts as a hiring manager.&lt;/li&gt;
&lt;li&gt;Feedback Analysis (JSON Schema)&lt;/li&gt;
&lt;li&gt;Ensures structured responses:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "strengths": ["Good clarity", "Relevant examples"],
  "areasForImprovement": ["Expand on technical depth", "Use STAR format"]
}

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

&lt;/div&gt;



&lt;p&gt;📦 Gemini Services Used&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. gemini-2.5-flash ⚡&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Why used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fastest multimodal Gemini model.&lt;/li&gt;
&lt;li&gt;Handles resume parsing from PDFs/images quickly.&lt;/li&gt;
&lt;li&gt;Great for interactive chat-based interviews where low latency is critical.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import { GoogleGenAI, Chat, Type } from "@google/genai";


✅ generateContent() → Resume extraction + feedback generation

✅ chats.create() → Interactive interview simulation

✅ JSON schema → Well-structured coaching insights
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🚀 Why Iris?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🎯 Problem: Many candidates struggle with interview preparation — either they don’t know what to expect or lack constructive feedback.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;🌟 Solution: Iris provides a safe, intelligent, and supportive environment to practice, with AI that:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Understands your resume&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Conducts live interviews&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Gives actionable coaching feedback&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Helps you improve over time&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;With Iris, you no longer have to walk into an interview unprepared.&lt;/strong&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>ai</category>
      <category>gemini</category>
    </item>
    <item>
      <title>Atomica- Turn Science into understandable concepts (Audio+Visual+ Tutoring)</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sun, 07 Sep 2025 08:33:49 +0000</pubDate>
      <link>https://dev.to/shreya111111/atomica-turn-science-into-understandable-concepts-1onj</link>
      <guid>https://dev.to/shreya111111/atomica-turn-science-into-understandable-concepts-1onj</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/google-ai-studio-2025-09-03"&gt;Google AI Studio Multimodal Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Atomica&lt;/strong&gt; is an AI-powered educational app that transforms science learning into an interactive, visual, auditory, and engaging experience. It helps students understand complex concepts through diagrams, explanations, quizzes, flashcards, AI-powered tutoring, and audio narration. By combining &lt;strong&gt;multimodal AI capabilities&lt;/strong&gt;, Atomica addresses the common problem of abstract science topics being hard to visualize, understand, and memorize, creating a hands-on, multisensory learning experience for students of all ages.&lt;/p&gt;

&lt;h2&gt;
  
  
  Atomica User Input
&lt;/h2&gt;

&lt;p&gt;👤 &lt;strong&gt;Your Level&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Who are you learning for?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🧒 Kid&lt;/li&gt;
&lt;li&gt;🎓 High School Student&lt;/li&gt;
&lt;li&gt;🎓👩‍🎓 College Student&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔬 &lt;strong&gt;Scientific Concept&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Type the science topic you want to learn:&lt;/p&gt;

&lt;p&gt;Examples: Photosynthesis, Newton’s Laws, DNA replication&lt;/p&gt;

&lt;p&gt;🌐 &lt;strong&gt;Language&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Choose the language you want:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🇬🇧 English&lt;/li&gt;
&lt;li&gt;🇮🇳 Hindi&lt;/li&gt;
&lt;li&gt;🇫🇷 French&lt;/li&gt;
&lt;li&gt;🇩🇪 German&lt;/li&gt;
&lt;li&gt;🇪🇸 Spanish&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📚 &lt;strong&gt;Learning Mode&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How do you want to learn?&lt;/li&gt;
&lt;li&gt;🖼️ Diagrams &amp;amp; visuals&lt;/li&gt;
&lt;li&gt;🎧 Audio explanations&lt;/li&gt;
&lt;li&gt;📝 Quizzes &amp;amp; flashcards&lt;/li&gt;
&lt;li&gt;🤖 AI tutor guidance&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;strong&gt;Demo Link&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div&gt;
  &lt;iframe src="https://loom.com/embed/6a7491f4d9ea4550aa33893ccd75e39c"&gt;
  &lt;/iframe&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Deployed Cloud Run App&lt;/strong&gt;: &lt;a href="https://atomica-47821800150.us-west1.run.app/" rel="noopener noreferrer"&gt;Atomica Live Demo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Screenshots&lt;/strong&gt;&lt;br&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%2Fex7t19wv9j3lbbsgllxf.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%2Fex7t19wv9j3lbbsgllxf.png" alt="Image1"&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%2Fit0nzt7ex6ijl4p8r8n0.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%2Fit0nzt7ex6ijl4p8r8n0.png" alt="Image4description"&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%2F5mohvidzk6mge4zc1c9v.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%2F5mohvidzk6mge4zc1c9v.png" alt="Image2description"&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%2Fsnnpx4k0vq8jreaq7ixl.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%2Fsnnpx4k0vq8jreaq7ixl.png" alt="Image3description"&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%2F0bgbdbipxve663d85p4s.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%2F0bgbdbipxve663d85p4s.png" alt="Image5description"&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%2F1g4q12v17ibgi0w9lnwh.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%2F1g4q12v17ibgi0w9lnwh.png" alt="Image6description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Used Google AI Studio
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1. Diagram Generation&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Converts a text prompt (like “Photosynthesis” or “Black Hole”) into a visual diagram.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: Uses AI to generate a clean, modern, educational illustration, highlighting only the key components with minimal text.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Makes abstract scientific concepts visible and easier to understand, helping visual learners quickly grasp ideas that are otherwise hard to imagine.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2. Multimodal Explanations&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Provides explanations based on the generated diagrams, combining both visual and textual information.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: AI analyzes the diagram and the topic prompt, then generates a concise, context-aware explanation. It can also use analogies for easier understanding.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Supports deep comprehension, allowing learners to connect the visual information to the underlying science in a meaningful way.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3. Audio Narration&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Reads explanations aloud to students.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: Uses AI to generate natural-sounding speech from the text explanations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Supports auditory learners and makes the platform accessible to students with visual impairments. It also allows multitasking or studying on the go.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4. Interactive Q&amp;amp;A (AI Chat Tutor)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Allows students to ask follow-up questions about any topic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: AI uses the context of the explanation and diagram to provide relevant, accurate answers in real time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Creates a personalized learning experience, helping students clarify doubts instantly instead of waiting for a teacher or searching elsewhere.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. Quiz and Flashcard Generation&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Automatically creates multiple-choice quizzes and flashcards from the explanation text.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: AI extracts key concepts and formulates questions, answers, and concise definitions for flashcards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Encourages active recall and spaced repetition, which are proven techniques for memory retention and mastery of concepts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;6. Translation Support&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What it does&lt;/strong&gt;: Converts explanations, quizzes, and flashcards into multiple languages.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works&lt;/strong&gt;: AI translates text while maintaining clarity and scientific accuracy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why it’s valuable&lt;/strong&gt;: Makes learning accessible to non-English speakers and supports global users, expanding the app’s usability and reach.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✅ &lt;strong&gt;Summary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Together, these features make Atomica a complete multisensory learning platform. Students can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;See diagrams&lt;/strong&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read and hear explanations&lt;/strong&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Test themselves with quizzes and flashcards&lt;/strong&gt;,&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interact with an AI tutor&lt;/strong&gt;, and&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Learn in multiple languages, all in one place&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Multimodal Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Image Generation&lt;/strong&gt;: The &lt;code&gt;imagen-4.0-generate-001&lt;/code&gt; model is used to generate clear, educational diagrams from text prompts. Note that this model may require a paid tier, and free-tier access may not be available.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multimodal Explanation&lt;/strong&gt;: The &lt;code&gt;gemini-2.5-flash&lt;/code&gt; model analyzes both diagrams and text prompts to provide context-aware explanations, making complex science concepts easy to understand. This is fully supported in the free tier.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quiz Generation&lt;/strong&gt;: Also using &lt;code&gt;gemini-2.5-flash&lt;/code&gt;, Atomica automatically generates multiple-choice quizzes based on the explanations, helping students test their understanding. Free-tier usage is supported.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flashcards&lt;/strong&gt;: The same &lt;code&gt;gemini-2.5-flash&lt;/code&gt; model creates memorization flashcards for key concepts, aiding active recall and long-term retention. Free-tier access is available.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chat Tutor&lt;/strong&gt;: &lt;code&gt;gemini-2.5-flash&lt;/code&gt; powers the interactive Q&amp;amp;A feature, allowing students to ask follow-up questions and receive accurate, context-aware answers. This feature is supported on the free tier.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Translation&lt;/strong&gt;: Using &lt;code&gt;gemini-2.5-flash&lt;/code&gt;, Atomica can translate explanations, quizzes, and flashcards into multiple languages, expanding accessibility for global learners. Free-tier usage is supported.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>ai</category>
      <category>gemini</category>
    </item>
    <item>
      <title>🎯 9-to-Alive: The Intranet Homepage Reinvented with Axero’s Vision</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sun, 20 Jul 2025 16:06:05 +0000</pubDate>
      <link>https://dev.to/shreya111111/9-to-alive-the-intranet-homepage-reinvented-with-axeros-vision-43mj</link>
      <guid>https://dev.to/shreya111111/9-to-alive-the-intranet-homepage-reinvented-with-axeros-vision-43mj</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/frontend/axero"&gt;Frontend Challenge: Office Edition sponsored by Axero, Holistic Webdev: Office Space&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;"Where employees go to get things done."&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Inspired by Axero's core principles—Productivity, Collaboration, Beautiful UI, People-Centric Design, and Instant Access to Information—this intranet homepage brings together purpose, aesthetics, and smart interactivity.&lt;/p&gt;
&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;



&lt;p&gt;🌟 Main Features Overview&lt;br&gt;
🎯&lt;strong&gt;1. Smart Navigation &amp;amp; UX&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sticky Tab Navigation that follows the user as they scroll.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Keyboard Shortcuts for instant access:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⌘+H – HR Portal&lt;/li&gt;
&lt;li&gt;⌘+I – IT Help Desk&lt;/li&gt;
&lt;li&gt;⌘+T – Timesheets&lt;/li&gt;
&lt;li&gt;&lt;p&gt;⌘+S – Team Chat&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Notification Badges for unread announcements or messages.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Animated Active Tab Indicators and toast notifications.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🗂️ Interactive Core Tabs&lt;br&gt;
📅 &lt;strong&gt;2. Events Tab&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Plan, RSVP, and participate with ease."&lt;/li&gt;
&lt;li&gt;RSVP-enabled interactive event cards with hover details.&lt;/li&gt;
&lt;li&gt;Advanced filtering by type: Meetings, Lunches, Hackathons, Holidays.&lt;/li&gt;
&lt;li&gt;Real-time search with suggestions.&lt;/li&gt;
&lt;li&gt;Event creation modal + notification system.&lt;/li&gt;
&lt;/ul&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%2Fp6mgfn0x3873hxlqcx9n.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%2Fp6mgfn0x3873hxlqcx9n.png" alt="Image1"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;👥 &lt;strong&gt;3. Teams Tab&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Know your people. Celebrate them."&lt;/li&gt;
&lt;li&gt;Expandable team member profiles with click-to-reveal contact info.&lt;/li&gt;
&lt;li&gt;Department filters and search.&lt;/li&gt;
&lt;li&gt;Work anniversary trackers and online/offline status indicators.&lt;/li&gt;
&lt;li&gt;“Connect” and “Message” buttons with animations.&lt;/li&gt;
&lt;/ul&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%2F76b7n0vd5g6pjjgj17kx.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%2F76b7n0vd5g6pjjgj17kx.png" alt="Image2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📁 &lt;strong&gt;4. Resources Tab&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Everything you need. Instantly."&lt;/li&gt;
&lt;li&gt;Downloadable documents with rating system.&lt;/li&gt;
&lt;li&gt;Bookmark functionality using localStorage.&lt;/li&gt;
&lt;li&gt;Sorting by name, downloads, rating, date.&lt;/li&gt;
&lt;li&gt;Category and tag filters.&lt;/li&gt;
&lt;/ul&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%2Fgslrap3w2oyftu1ewgq7.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%2Fgslrap3w2oyftu1ewgq7.png" alt="Image3"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;📢 &lt;strong&gt;5. Announcements Tab&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Stay informed, stay ahead."&lt;/li&gt;
&lt;li&gt;Priority levels: Urgent, High, Medium, Low.&lt;/li&gt;
&lt;li&gt;Visual indicators for read/unread.&lt;/li&gt;
&lt;li&gt;Like/comment system.&lt;/li&gt;
&lt;li&gt;Search + category filter.&lt;/li&gt;
&lt;li&gt;“Mark as Read” notifications.&lt;/li&gt;
&lt;/ul&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%2Fcz3liztn1puhf3inzut2.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%2Fcz3liztn1puhf3inzut2.png" alt="Image4"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;⭐ &lt;strong&gt;6. Highlights Tab&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Capture moments that matter."&lt;/li&gt;
&lt;li&gt;Achievements, milestones, and news in visual cards.&lt;/li&gt;
&lt;li&gt;Masonry layout for a beautiful gallery effect.&lt;/li&gt;
&lt;li&gt;Persistent like/bookmark features.&lt;/li&gt;
&lt;li&gt;Sharing and reactions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🎮&lt;strong&gt;7. Interactive Games Tab: Gamified Learning Center&lt;/strong&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%2Ffinh5wq712630pd9vy28.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%2Ffinh5wq712630pd9vy28.png" alt="Image5"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🧠 Company Trivia Game&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Timed Q&amp;amp;A with:&lt;/li&gt;
&lt;li&gt;Score tracking&lt;/li&gt;
&lt;li&gt;Global leaderboard&lt;/li&gt;
&lt;li&gt;Confetti for high scores&lt;/li&gt;
&lt;li&gt;Progress indicators and question explanations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🧩 Memory Challenge&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Classic card matching gameplay.&lt;/li&gt;
&lt;li&gt;Score, move counter, reset.&lt;/li&gt;
&lt;li&gt;LocalStorage for personal score tracking.&lt;/li&gt;
&lt;li&gt;Confetti celebration on completion.&lt;/li&gt;
&lt;li&gt;Bonus: Global leaderboard for friendly competition!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔋 &lt;strong&gt;Enhanced Interactivity &amp;amp; Persistence&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Real-time Feedback: Toasts, micro-interactions, hover states.&lt;/li&gt;
&lt;li&gt;Confetti Animations: For achievements and game completions.&lt;/li&gt;
&lt;li&gt;LocalStorage Integration:&lt;/li&gt;
&lt;li&gt;Bookmarks, likes&lt;/li&gt;
&lt;li&gt;Announcements read status&lt;/li&gt;
&lt;li&gt;Game scores&lt;/li&gt;
&lt;li&gt;Mood check-in data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;💼&lt;strong&gt;Axero Signature Widgets&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;🏆 &lt;strong&gt;8. Team Spotlight (Axero Core Feature)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Celebrate excellence and foster culture."&lt;/li&gt;
&lt;li&gt;Employee of the Month (e.g. Sarah Chen – Senior Developer, Engineering)&lt;/li&gt;
&lt;li&gt;Click to appreciate (heart or kudos system)&lt;/li&gt;
&lt;li&gt;Highlights major contributions (e.g. “Outstanding performance in Q4 2024”)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📈 &lt;strong&gt;9. Project Dashboard&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Track progress. Deliver with confidence."&lt;/li&gt;
&lt;li&gt;Projects with:&lt;/li&gt;
&lt;li&gt;Status indicators (active, overdue)&lt;/li&gt;
&lt;li&gt;Due dates and percentage completion&lt;/li&gt;
&lt;li&gt;Assigned team member avatars&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Examples:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Customer Portal v2.0 – 75%&lt;/li&gt;
&lt;li&gt;Mobile App Redesign – 45%&lt;/li&gt;
&lt;li&gt;API Security Audit – 90%, Overdue&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;💬 &lt;strong&gt;10. Daily Check-in &amp;amp; Leadership Corner&lt;/strong&gt;&lt;br&gt;
"Prioritize mental wellbeing. Hear from leadership."&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Daily Mood Check-in: Emoji-based (Happy, Okay, Stressed)&lt;/li&gt;
&lt;li&gt;Personalized response messages - Stored in localStorage for trend tracking&lt;/li&gt;
&lt;li&gt;Tip card: "Regular check-ins help us improve your work experience."&lt;/li&gt;
&lt;li&gt;Leadership Corner:&lt;/li&gt;
&lt;li&gt;Weekly message from CEO/Managers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;“Excited to announce our Q4 results exceeded expectations! Thank you all for your incredible dedication.”&lt;br&gt;
– Jennifer Walsh, CEO&lt;/p&gt;

&lt;p&gt;🎯 &lt;strong&gt;Principle of the Day&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Be Customer-Obsessed: Every decision should benefit our customers first."&lt;/li&gt;
&lt;li&gt;Auto-rotating display of Axero’s core principles.&lt;/li&gt;
&lt;li&gt;Smooth transitions every 10 seconds using JS.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;💌 &lt;strong&gt;Kudos Wall&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Shoutouts that shape culture."&lt;/li&gt;
&lt;li&gt;Peer-to-peer appreciation board&lt;/li&gt;
&lt;li&gt;Like system (❤️)&lt;/li&gt;
&lt;li&gt;Timestamped kudos with sender &amp;amp; receiver cards&lt;/li&gt;
&lt;/ul&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%2Fjuq019vk97tqjgvm1lc9.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%2Fjuq019vk97tqjgvm1lc9.png" alt="Image7"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;



&lt;ul&gt;
&lt;li&gt; Live Demo&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Explore the full interactive intranet experience here:  &lt;strong&gt;&lt;a href="https://famous-rugelach-28601d.netlify.app/" rel="noopener noreferrer"&gt;Link&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Shreya111111" rel="noopener noreferrer"&gt;
        Shreya111111
      &lt;/a&gt; / &lt;a href="https://github.com/Shreya111111/Intranet1" rel="noopener noreferrer"&gt;
        Intranet1
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;🎯 9-to-Alive: The Intranet Homepage Reinvented with Axero’s Vision&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Welcome to &lt;strong&gt;Office Haven&lt;/strong&gt; — a modern, people-first digital workspace crafted to elevate team collaboration, boost morale, and make workdays more intuitive, engaging, and productive.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🌐 &lt;strong&gt;Live Demo&lt;/strong&gt;: &lt;a href="https://famous-rugelach-28601d.netlify.app/" rel="nofollow noopener noreferrer"&gt;Check it out on Netlify!&lt;/a&gt;
&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;💡 Features at a Glance&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🔧 Feature&lt;/th&gt;
&lt;th&gt;📝 Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;📅 &lt;strong&gt;Live Events&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;RSVP-enabled event tiles with countdowns &amp;amp; speaker highlights.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🧠 &lt;strong&gt;Knowledge Center&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Searchable documentation, team resources, and SOPs.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🎮 &lt;strong&gt;Gamification Hub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Badge rewards, levels, and XP-based interactions.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🌈 &lt;strong&gt;Mood Check-ins&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Anonymous emoji-based status updates to support mental wellness.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🌟 &lt;strong&gt;Team Spotlights&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Auto-rotating member highlights to boost morale and visibility.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📢 &lt;strong&gt;Announcement Carousel&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Company-wide updates in a rotating banner format.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🔍 &lt;strong&gt;Quick Links Panel&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Instant access to HR tools, payroll, IT support, and more.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📈 &lt;strong&gt;Productivity Dashboard&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Track daily goals, completed tasks, and focus timers.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;🤝 &lt;strong&gt;Collaboration Feed&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;Shout-outs, polls, and quick wins posted by the team.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;…&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Shreya111111/Intranet1" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;Designing Office Haven was an exciting opportunity to reimagine what a modern intranet could be. I focused on combining Axero’s core principles with engaging interactivity, ensuring a people-first experience that’s both functional and fun. From implementing 📅 live RSVP-enabled events to building a 🎮 gamified center and 😊 mood check-ins, each feature was crafted to promote productivity and culture. The result is a digital workspace that feels alive, intuitive, and truly collaborative.&lt;/p&gt;

&lt;p&gt;🛠️ My process began with deep research into Axero’s core values and product philosophy, which helped guide every 🧩 design and interaction choice. I 🧾 wireframed the layout to prioritize ease of navigation and 🔍 information accessibility, then built the interface using clean, modular code. ✨&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;License : MIT ❤️&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Made in ❤️ by &lt;a href="https://dev.to/shreya111111"&gt;Shreya N&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>frontendchallenge</category>
      <category>css</category>
      <category>javascript</category>
    </item>
    <item>
      <title>AI E-CommerceWatch – Product Research Agent for E-Commerce By RunnerH</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Thu, 19 Jun 2025 16:36:06 +0000</pubDate>
      <link>https://dev.to/shreya111111/ai-marketwatch-product-research-agent-for-e-commerce-by-runnerh-2lnd</link>
      <guid>https://dev.to/shreya111111/ai-marketwatch-product-research-agent-for-e-commerce-by-runnerh-2lnd</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/runnerh"&gt;Runner H "AI Agent Prompting" Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I created an &lt;strong&gt;AI-powered&lt;/strong&gt; autonomous product research agent using Runner H, focused on helping &lt;strong&gt;e-commerce sellers&lt;/strong&gt; identify high-potential products for platforms like &lt;strong&gt;Amazon, Etsy, and Shopify&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This Runner H agent performs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Trend analysis across platforms (Amazon, TikTok Shopping, Google Trends)&lt;/li&gt;
&lt;li&gt;Product data aggregation (prices, reviews, profit margins)&lt;/li&gt;
&lt;li&gt;Competition scoring&lt;/li&gt;
&lt;li&gt;Supplier discovery&lt;/li&gt;
&lt;li&gt;Launch strategy generation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All of this is saved in a structured PDF and Google Sheet for actionable insights.&lt;/p&gt;

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

&lt;p&gt;Prompt Used&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Agent Objective:
You are an AI Agent designed to help Amazon sellers identify profitable product opportunities by scanning e-commerce trends, evaluating market demand and competition, and shortlisting suppliers.

Inputs Required:
- A keyword or niche idea (e.g., “portable blender”, “eco-friendly yoga mat”)
- Minimum profit margin (%)
- Minimum monthly search volume
- Maximum competition threshold (scale of 1–10)
- Target region (e.g., US, India)

Tasks:
1. Trend Research:
   - Search Amazon, Google Trends, Etsy, and TikTok Shopping to evaluate the popularity of the keyword.
   - Capture top 5 trending related keywords.
   - Summarize seasonality insights if any (e.g., spikes during summer).

2. Market Evaluation:
   - Find 5 top-selling listings on Amazon for the keyword.
   - Collect price, estimated monthly sales, reviews, rating, and fulfillment type (FBA, FBM).
   - Calculate rough profit margin: (Price – Est. Cost) / Price.
   - Flag products meeting the margin &amp;amp; volume criteria.

3. Competition Analysis:
   - Count total number of sellers.
   - Analyze top 3 sellers’ review counts.
   - Estimate barrier to entry (low/medium/high).
   - Score the competition level from 1–10.

4. Supplier Discovery:
   - Search Alibaba or IndiaMART for potential suppliers.
   - List top 3 suppliers with MOQ, cost per unit, and contact info.

5. Launch Plan Generation:
   - Recommend pricing strategy.
   - Suggest 3 key differentiators or features.
   - Suggest initial launch platform (Amazon, Etsy, own store).
   - List recommended ad budget and keywords.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Youtube Link&lt;/strong&gt;&lt;br&gt;
  &lt;iframe src="https://www.youtube.com/embed/KUpHFZgvwtg"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;RUNNER H LINK : &lt;a href="https://runner.hcompany.ai/chat/a13cb524-1f06-4025-a299-bc5c3ea5a84b/share" rel="noopener noreferrer"&gt;Prompt Link&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Outputs:&lt;/strong&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%2F8cp08g6ut9botuyq48w1.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%2F8cp08g6ut9botuyq48w1.png" alt="Image1"&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%2Fv2dmyob26glqizbl03ot.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%2Fv2dmyob26glqizbl03ot.png" alt="Image2"&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%2Fot44xpv8ytr8t6fppbpr.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%2Fot44xpv8ytr8t6fppbpr.png" alt="Image3"&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%2Frwrrah5kfe4j0v9izlwv.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%2Frwrrah5kfe4j0v9izlwv.png" alt="Image4"&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%2Fehnaqbcl387q9mrg0ce4.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%2Fehnaqbcl387q9mrg0ce4.png" alt="Image5"&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%2Fgg5dbwj3tcrc8bkcuzmz.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%2Fgg5dbwj3tcrc8bkcuzmz.png" alt="Image6"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Write all outputs in a structured PDF with fields matching the Google Sheet schema below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://drive.google.com/file/d/1WPpCRtvmBdC066MRC4qSJsxy1yWhuALV/view?usp=sharing" rel="noopener noreferrer"&gt;Generated PDF&lt;/a&gt;&lt;br&gt;
&lt;a href="https://docs.google.com/spreadsheets/d/1cJuZwA6zg9X9qXLuaIPjcr5JQ6GeLmp9/edit?gid=690782712#gid=690782712" rel="noopener noreferrer"&gt;AI Market Analysis - Google Sheets&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Used Runner H
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Workflow Structure&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Input Collection&lt;/li&gt;
&lt;li&gt;User enters a niche or product idea (e.g., "phone")&lt;/li&gt;
&lt;li&gt;Trend Analysis (Runner H agent)&lt;/li&gt;
&lt;li&gt;Scrapes Amazon bestsellers, Google Trends, TikTok Shopping&lt;/li&gt;
&lt;li&gt;Extracts seasonality, rising interest, top keywords&lt;/li&gt;
&lt;li&gt;Market Evaluation&lt;/li&gt;
&lt;li&gt;Collects top listings from Amazon (price, reviews, rating)&lt;/li&gt;
&lt;li&gt;Estimates profit margin, average monthly sales&lt;/li&gt;
&lt;li&gt;Assigns a competition score&lt;/li&gt;
&lt;li&gt;Supplier Sourcing&lt;/li&gt;
&lt;li&gt;Pulls top matches from Amazon / IndiaMART with MOQ and pricing&lt;/li&gt;
&lt;li&gt;Launch Strategy Generator&lt;/li&gt;
&lt;li&gt;Recommends pricing, ad budget, key differentiators, and best platform&lt;/li&gt;
&lt;li&gt;Data Export&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All data saved to a structured Google Sheet: AI Market Watch – Q2&lt;/p&gt;

&lt;h2&gt;
  
  
  Use Case &amp;amp; Impact
&lt;/h2&gt;

&lt;p&gt;Who it helps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Indie e-commerce founders&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Amazon FBA sellers&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Product researchers&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DTC brands&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What it solves:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Manual product validation is time-consuming. This solution speeds up:&lt;/li&gt;
&lt;li&gt;Market research&lt;/li&gt;
&lt;li&gt;Competitor tracking&lt;/li&gt;
&lt;li&gt;Sourcing suppliers&lt;/li&gt;
&lt;li&gt;Launch planning&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Social Love
&lt;/h3&gt;

&lt;p&gt;&lt;iframe class="tweet-embed" id="tweet-1942117136442490900-631" src="https://platform.twitter.com/embed/Tweet.html?id=1942117136442490900"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1942117136442490900-631');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1942117136442490900&amp;amp;theme=dark"
  }



&lt;br&gt;
Made with ❤️ by Shreya N &lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>runnerhchallenge</category>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Cloud Networking Showdown: AWS VPC vs. Azure VNET vs. Google Cloud VPC</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Thu, 30 Jan 2025 13:54:14 +0000</pubDate>
      <link>https://dev.to/shreya111111/cloud-networking-showdown-aws-vpc-vs-azure-vnet-vs-google-cloud-vpc-5e61</link>
      <guid>https://dev.to/shreya111111/cloud-networking-showdown-aws-vpc-vs-azure-vnet-vs-google-cloud-vpc-5e61</guid>
      <description>&lt;p&gt;Cloud computing has transformed how businesses operate, and at the heart of most cloud infrastructures are networking solutions. AWS VPC, Azure VNET, and Google Cloud VPC each offer ways to manage and connect virtual networks, but each has its own unique features and nuances. To make this comparison more relatable, let’s explore these cloud networking solutions through a simple analogy—think of them like different types of highways connecting cities (your servers and applications). &lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;AWS VPC: The Established Highway System&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;AWS Virtual Private Cloud (VPC) is like a mature, well-maintained highway network—comprehensive, reliable, and familiar to many. AWS VPC gives you full control over your network environment, letting you create isolated virtual networks in the cloud, akin to building your own private highways. &lt;/p&gt;

&lt;p&gt;Key features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Customizable Network:&lt;/strong&gt; You can design your VPC with subnets, route tables, and gateways to control how traffic flows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security:&lt;/strong&gt; Features like security groups (firewalls for individual instances) and Network ACLs (access control lists for subnets) offer strong protections.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;VPC Peering and Transit Gateway:&lt;/strong&gt; You can connect multiple VPCs (think of them as different cities) using peering or Transit Gateways for broader network integration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AWS has a robust ecosystem, with a wide variety of additional networking tools and services, such as Direct Connect (dedicated network links) and PrivateLink (secure access to services), making it a great option for organizations that require flexibility and scalability.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Azure VNET: The Highway with Easy On-Ramps&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Azure’s Virtual Network (VNET) is like a highway system with smooth on-ramps and off-ramps that make it incredibly easy for developers to plug into. If you’re already in the Microsoft ecosystem, Azure VNET is designed with integrations in mind, making it simple to extend your existing Active Directory or hybrid workloads.&lt;/p&gt;

&lt;p&gt;Key features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Ease of Use:&lt;/strong&gt; Azure VNET has built-in integration with many Microsoft tools, making it a seamless option for enterprises using Windows Server, Active Directory, or SQL Server.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Subnets and Network Security Groups:&lt;/strong&gt; Just like AWS VPC, Azure VNET lets you segment your network into subnets. Network Security Groups (NSGs) are like custom rules that control traffic flow, providing a firewall-like protection.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hybrid Connectivity:&lt;/strong&gt; Azure provides strong hybrid connectivity options, including Azure ExpressRoute (similar to AWS Direct Connect) for establishing private connections between on-premises and the cloud.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While it might not be as feature-packed as AWS VPC, Azure VNET’s tight integration with other Microsoft services makes it ideal for businesses already working with Microsoft technologies.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Google Cloud VPC: The Smart, Adaptive Network&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Google Cloud VPC is like a modern, smart highway system that adapts and grows based on the city’s needs. It’s optimized for simplicity, innovation, and low-latency services, leveraging Google’s expertise in networking and data management.&lt;/p&gt;

&lt;p&gt;Key features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Global Network:&lt;/strong&gt; One of Google Cloud’s standout features is its global VPC. Unlike AWS or Azure, Google VPC allows you to create a single VPC across regions without needing to set up complex inter-region peering. It’s as if you could have a highway that seamlessly connects cities worldwide.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Simple and Flexible:&lt;/strong&gt; Google VPC’s user interface is intuitive, making it easy to set up and manage. The VPC supports both private and public IPs, and firewall rules can be set at the global level, simplifying configuration.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Private Google Services Access:&lt;/strong&gt; With Private Google Access, you can access Google Cloud services (like Cloud Storage and BigQuery) from within your VPC without needing to use the public internet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Google Cloud VPC may not have the same depth of services as AWS or Azure, but it’s perfect for developers and businesses looking for a simple, highly scalable, and globally connected networking solution.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;How They Compare: Highway Systems&lt;/strong&gt;
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;AWS VPC&lt;/th&gt;
&lt;th&gt;Azure VNET&lt;/th&gt;
&lt;th&gt;Google Cloud VPC&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Ease of Use&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Feature-rich but complex&lt;/td&gt;
&lt;td&gt;Simple with Microsoft integrations&lt;/td&gt;
&lt;td&gt;Highly intuitive, simple setup&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Global Connectivity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Limited to region-based VPCs&lt;/td&gt;
&lt;td&gt;Region-based, with VPN support&lt;/td&gt;
&lt;td&gt;Global VPC, no need for complex peering&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Security&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Granular control with SGs, ACLs&lt;/td&gt;
&lt;td&gt;NSGs and firewall rules&lt;/td&gt;
&lt;td&gt;Global firewall rules, customizable access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Hybrid Cloud Support&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Direct Connect and VPN&lt;/td&gt;
&lt;td&gt;ExpressRoute and VPN&lt;/td&gt;
&lt;td&gt;Cloud Interconnect and VPN&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Integration&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Strong ecosystem, many tools&lt;/td&gt;
&lt;td&gt;Best for Microsoft-heavy environments&lt;/td&gt;
&lt;td&gt;Seamless integration with Google services&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Conclusion: Which Highway is Right for You?&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Choosing between AWS VPC, Azure VNET, and Google Cloud VPC boils down to your specific needs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AWS VPC&lt;/strong&gt; is ideal if you need a comprehensive, highly customizable, and scalable network, especially if you're dealing with complex applications or large enterprises.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Azure VNET&lt;/strong&gt; is a solid choice for businesses heavily invested in Microsoft technologies, as it integrates seamlessly with on-premises solutions and Microsoft cloud tools.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Cloud VPC&lt;/strong&gt; stands out if you need a global, simple, and high-performance network with ease of use and tight integration with Google Cloud services, especially for big data or machine learning workloads.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just like choosing the right highway depends on where you need to go, selecting the right cloud provider’s networking solution depends on your company’s goals, existing infrastructure, and long-term strategy.&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>learning</category>
      <category>beginners</category>
      <category>devops</category>
    </item>
    <item>
      <title>DBaaS Unleashed: Exploring DyanamoDB &amp; RDS in the AWS</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Tue, 31 Dec 2024 18:29:27 +0000</pubDate>
      <link>https://dev.to/shreya111111/dbaas-unleashed-exploring-dyanamodb-rds-in-the-aws-3c8d</link>
      <guid>https://dev.to/shreya111111/dbaas-unleashed-exploring-dyanamodb-rds-in-the-aws-3c8d</guid>
      <description>&lt;p&gt;&lt;strong&gt;Database As A Service:&lt;/strong&gt;&lt;br&gt;
Database as a service (DBaaS) is a cloud computing managed service offering that provides access to a database without requiring the setup of physical hardware, the installation of software, or the need to configure the database. Most maintenance and administrative tasks are handled by the service provider, freeing up users to quickly benefit from using the database. DBaaS uses The DBaaS model is ideal for small to medium-sized businesses that do not have well-staffed IT departments. Offloading the service and maintenance of the database to the DBaaS provider enables small to medium-sized businesses to implement applications and systems that they otherwise could not afford to build and support on-premises. Workloads involving data with stringent regulatory requirements may not be suitable for a  DBaaS model. Furthermore, mission-critical applications that require optimal performance and 99.999% of uptime may be better suited for on-premises implementation. This is not to say that mission-critical workloads cannot run on cloud services, but much of the DBaaS adoption to date has been for less crucial applications, such as development and pilot programs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Detailed Implementation Steps: DynamoDB
&lt;/h3&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 1: Select Database in AWS Services&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Log in to the AWS Management Console.
&lt;/li&gt;
&lt;li&gt;Navigate to &lt;strong&gt;Services&lt;/strong&gt; in the top menu.
&lt;/li&gt;
&lt;li&gt;Under the &lt;strong&gt;Database&lt;/strong&gt; category, select &lt;strong&gt;DynamoDB&lt;/strong&gt;.

&lt;ul&gt;
&lt;li&gt;DynamoDB is a fully managed NoSQL database service designed for high availability and scalability.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2Fm8l2nuoxz581gje6idnj.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%2Fm8l2nuoxz581gje6idnj.png" alt="AWS_1" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 2: Go to DynamoDB Dashboard&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Once inside DynamoDB, you'll see the dashboard where you can manage tables, monitor usage, and configure settings.
&lt;/li&gt;
&lt;li&gt;Familiarize yourself with the key sections, such as Tables, Metrics, and Global Tables, for future use.
&lt;/li&gt;
&lt;/ol&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%2Fwtbzftb1tovl343up7jz.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%2Fwtbzftb1tovl343up7jz.png" alt="AWS_2" width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 3: Create a Table&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;"Create Table"&lt;/strong&gt; to open the table creation wizard.
&lt;/li&gt;
&lt;li&gt;Provide a &lt;strong&gt;Table Name&lt;/strong&gt; (e.g., &lt;code&gt;MyFirstTable&lt;/code&gt;). This must be unique within your AWS account.
&lt;/li&gt;
&lt;li&gt;Define the &lt;strong&gt;Primary Key&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Partition Key&lt;/strong&gt;: The unique identifier for each item (e.g., &lt;code&gt;UserID&lt;/code&gt;).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sort Key&lt;/strong&gt; (Optional): Used to sort items with the same Partition Key (e.g., &lt;code&gt;OrderDate&lt;/code&gt;).
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Configure additional settings (optional):

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Provisioned Throughput&lt;/strong&gt;: Choose between "On-Demand" or "Provisioned" based on expected traffic.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Encryption&lt;/strong&gt;: Enable encryption at rest for enhanced security.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Global Secondary Indexes (GSIs)&lt;/strong&gt; or &lt;strong&gt;Local Secondary Indexes (LSIs)&lt;/strong&gt; can be added for optimized querying.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;"Create Table"&lt;/strong&gt; to initiate table creation. It may take a few moments for the table to be ready.
&lt;/li&gt;
&lt;/ol&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%2Flmhnhntt5xfb0ra9thuc.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%2Flmhnhntt5xfb0ra9thuc.png" alt="AWS_3" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 4: Confirm Table Creation&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Once the table is created, it will appear in the &lt;strong&gt;Tables&lt;/strong&gt; list.
&lt;/li&gt;
&lt;li&gt;Click on the table name to view its details, including schema, items, metrics, and indexes.
&lt;/li&gt;
&lt;/ol&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%2Feu3bsi1se4rez6x07c4j.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%2Feu3bsi1se4rez6x07c4j.png" alt="AWS_4" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 5: Add Items to the Table&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Navigate to the &lt;strong&gt;Items&lt;/strong&gt; tab within your table.
&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Actions&lt;/strong&gt;, click &lt;strong&gt;Create Item&lt;/strong&gt;.
&lt;/li&gt;
&lt;/ol&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%2F7t5ypinenq2d1oen9op9.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%2F7t5ypinenq2d1oen9op9.png" alt="AWS_5" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 6: Enter Item Data&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;The &lt;strong&gt;Create Item&lt;/strong&gt; interface will open.
&lt;/li&gt;
&lt;li&gt;Enter values for the Partition Key and Sort Key (if applicable).

&lt;ul&gt;
&lt;li&gt;Example: &lt;code&gt;UserID&lt;/code&gt; = "12345", &lt;code&gt;OrderDate&lt;/code&gt; = "2024-01-01".
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add additional attributes as key-value pairs, such as:

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Name&lt;/code&gt; = "John Doe"
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Email&lt;/code&gt; = "&lt;a href="mailto:john.doe@example.com"&gt;john.doe@example.com&lt;/a&gt;"
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;OrderAmount&lt;/code&gt; = 150.25
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Once all required attributes are added, click &lt;strong&gt;Save&lt;/strong&gt;.
&lt;/li&gt;
&lt;/ol&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%2Fc7nryyw5u1zbf1ltspjy.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%2Fc7nryyw5u1zbf1ltspjy.png" alt="AWS_6" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 7: View and Explore Items&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Go back to the &lt;strong&gt;Items&lt;/strong&gt; tab.
&lt;/li&gt;
&lt;li&gt;You’ll see a list of all items in the table.
&lt;/li&gt;
&lt;/ol&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 8: Query and Filter Data&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;In the &lt;strong&gt;Explore Items&lt;/strong&gt; section, use the &lt;strong&gt;Scan&lt;/strong&gt; operation to retrieve all items in the table.
&lt;/li&gt;
&lt;li&gt;Apply filters to refine your results:

&lt;ul&gt;
&lt;li&gt;Example: Filter items where &lt;code&gt;OrderAmount &amp;gt; 100&lt;/code&gt;.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Use the Query operation for more precise lookups, especially if your table has a Sort Key.
&lt;/li&gt;
&lt;/ol&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%2Fs18m5ev8yr9kjtcbnfdq.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%2Fs18m5ev8yr9kjtcbnfdq.png" alt="AWS_7" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 9: Monitor Table Metrics&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Go to the &lt;strong&gt;Metrics&lt;/strong&gt; tab to view performance data, such as read/write capacity usage, throttling events, and storage utilization.
&lt;/li&gt;
&lt;li&gt;Adjust provisioned throughput if necessary to optimize performance.
&lt;/li&gt;
&lt;/ol&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 10: Delete the Table&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Navigate to the DynamoDB dashboard and select the table you created.
&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Actions&lt;/strong&gt;, choose &lt;strong&gt;Delete Table&lt;/strong&gt;.
&lt;/li&gt;
&lt;li&gt;Confirm the deletion in the pop-up dialog.

&lt;ul&gt;
&lt;li&gt;Note: Deleting a table is irreversible and removes all associated data.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2F5g1z9vqi0gh9z5iia8fd.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%2F5g1z9vqi0gh9z5iia8fd.png" alt="AWS_8" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Detailed Implementation Steps: RDS
&lt;/h3&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%2Fxl1ig2bssmh9zls44u9m.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%2Fxl1ig2bssmh9zls44u9m.png" alt="rds1" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Step 11: Navigate to AWS RDS&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Log in to your AWS Management Console.
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Services&lt;/strong&gt; in the top menu bar.
&lt;/li&gt;
&lt;li&gt;Under the &lt;strong&gt;Database&lt;/strong&gt; section, select &lt;strong&gt;RDS&lt;/strong&gt;.

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;RDS (Relational Database Service)&lt;/strong&gt; is a fully managed service that allows you to easily set up, operate, and scale a relational database in the cloud. It supports multiple database engines, including MySQL, PostgreSQL, Oracle, SQL Server, and Amazon Aurora.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;h4&gt;
  
  
  &lt;strong&gt;Step 12: Create a Database in RDS&lt;/strong&gt;
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Once inside the RDS dashboard, click on &lt;strong&gt;"Databases"&lt;/strong&gt; in the left navigation panel.
&lt;/li&gt;
&lt;li&gt;Click on the &lt;strong&gt;"Create database"&lt;/strong&gt; button to start the database creation process.
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&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%2Faj6ol5jt31gvcx4rbjp7.png" alt="rds2" width="800" height="449"&gt;
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Step 13: Configure Database Settings&lt;/strong&gt;
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Select the Database Engine&lt;/strong&gt;:
Choose the database engine you wish to use (e.g., MySQL, PostgreSQL, MariaDB, etc.).

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Example&lt;/strong&gt;: Select &lt;strong&gt;MySQL&lt;/strong&gt; for a relational database setup. &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2F1yuo3t13djdk3b3kd8se.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%2F1yuo3t13djdk3b3kd8se.png" alt="rds3" width="800" height="449"&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%2F8bpwjw988tsxw3ekvfnb.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%2F8bpwjw988tsxw3ekvfnb.png" alt="rds4" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Choose a Template&lt;/strong&gt;:
You can choose between:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Production&lt;/strong&gt;: For highly available and scalable environments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dev/Test&lt;/strong&gt;: For lower cost, non-production environments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free Tier&lt;/strong&gt;: If you're eligible, this option provides limited free usage (1 GB of storage, 20 GB backup).
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2Fal0628shjnrka23lkq2x.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%2Fal0628shjnrka23lkq2x.png" alt="rds5" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Settings&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;DB Instance Identifier&lt;/strong&gt;: Choose a unique name for the instance (e.g., &lt;code&gt;mydatabaseinstance&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Master Username&lt;/strong&gt;: Choose a username for the database administrator (e.g., &lt;code&gt;admin&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Master Password&lt;/strong&gt;: Enter a strong password and confirm it.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2Fi161erh7qnpp45g6u904.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%2Fi161erh7qnpp45g6u904.png" alt="rds5" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;DB Instance Class&lt;/strong&gt;:
Select the instance size (e.g., &lt;code&gt;db.t3.micro&lt;/code&gt; for smaller, cost-effective setups or larger instance sizes for production workloads).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Storage&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Storage Type&lt;/strong&gt;: Choose between General Purpose (SSD) or Provisioned IOPS (SSD) for higher performance.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Allocated Storage&lt;/strong&gt;: Set the size for your database storage (e.g., 20 GB).
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;VPC and Network Configuration&lt;/strong&gt;:
Choose the &lt;strong&gt;VPC&lt;/strong&gt; (Virtual Private Cloud) in which the RDS instance will run.

&lt;ul&gt;
&lt;li&gt;Ensure you select the correct &lt;strong&gt;subnet group&lt;/strong&gt; and security group. This will define the network and access permissions for the database.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backup and Maintenance&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;Set the &lt;strong&gt;Backup Retention Period&lt;/strong&gt; (how long backups are kept).
&lt;/li&gt;
&lt;li&gt;Configure &lt;strong&gt;Automated Backups&lt;/strong&gt;, &lt;strong&gt;Multi-AZ Deployment&lt;/strong&gt;, and &lt;strong&gt;Maintenance&lt;/strong&gt; window if needed.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Click on &lt;strong&gt;Create Database&lt;/strong&gt; to start the database creation process.

&lt;ul&gt;
&lt;li&gt;Note: The process may take a few minutes to complete.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2F2u4e68wz6hnlyr8f118w.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%2F2u4e68wz6hnlyr8f118w.png" alt="rds6" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;Step 14: Access the Database Instance&lt;/strong&gt;
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;After the database instance is created, click on the &lt;strong&gt;Database name&lt;/strong&gt; (e.g., &lt;code&gt;mydatabaseinstance&lt;/code&gt;) in the &lt;strong&gt;Databases&lt;/strong&gt; tab to view its details.
&lt;/li&gt;
&lt;li&gt;You can see important information such as:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Endpoint&lt;/strong&gt;: The address you will use to connect to the database.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;VPC Security Group&lt;/strong&gt;: The security group that controls access.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DB Parameter Group&lt;/strong&gt;: Configuration settings that define behavior of the database.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;From this page, you can monitor performance, set up additional options, and access the database instance’s logs.
&lt;/li&gt;
&lt;/ol&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%2Fmb7i8x9ifmxl8fn2a226.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%2Fmb7i8x9ifmxl8fn2a226.png" alt="rds7" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;Step 15: Delete the Database Instance&lt;/strong&gt;
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;To delete the database instance, go to the &lt;strong&gt;Databases&lt;/strong&gt; page in the RDS dashboard.
&lt;/li&gt;
&lt;li&gt;Select the database instance you want to delete (e.g., &lt;code&gt;mydatabaseinstance&lt;/code&gt;).
&lt;/li&gt;
&lt;li&gt;From the &lt;strong&gt;Actions&lt;/strong&gt; dropdown menu, select &lt;strong&gt;Delete&lt;/strong&gt;.

&lt;ul&gt;
&lt;li&gt;A confirmation window will appear asking if you’re sure about deleting the instance.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;You will be prompted to:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Create a final snapshot&lt;/strong&gt; (optional). You can choose to create a snapshot before deletion if you wish to back up the database’s current state.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Retain automated backups&lt;/strong&gt;: You can also choose whether to keep automated backups after deletion.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Delete&lt;/strong&gt; to start the deletion process.

&lt;ul&gt;
&lt;li&gt;The deletion of the instance may take some time, depending on the instance size and configuration.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2Fnt8zkmusde2h4q0z3e0s.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%2Fnt8zkmusde2h4q0z3e0s.png" alt="rds8" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Final Notes:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;VPC Settings&lt;/strong&gt;: Be cautious about the &lt;strong&gt;VPC&lt;/strong&gt; (Virtual Private Cloud) settings as this dictates which resources can access your RDS instance. If your VPC is misconfigured, it may block the connection to your database.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backups&lt;/strong&gt;: Before deleting any instance, ensure that you have backed up any important data, as deleting the database is irreversible if you don’t retain backups.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Monitoring&lt;/strong&gt;: After creation, use the &lt;strong&gt;CloudWatch&lt;/strong&gt; monitoring tool to keep track of database performance (CPU usage, memory consumption, etc.).&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>Efficient S3 Uploads: Your Cloud Guide</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Tue, 31 Dec 2024 17:53:14 +0000</pubDate>
      <link>https://dev.to/shreya111111/s3crets-of-cloud-storage-1n40</link>
      <guid>https://dev.to/shreya111111/s3crets-of-cloud-storage-1n40</guid>
      <description>&lt;p&gt;Storage as a service (STaaS) is a cloud business model in which a company leases or rents its storage infrastructure to another company or individuals to store data. Small companies and individuals often find this to be a convenient methodology for managing backups, and providing cost savings in personnel, hardware and physical space. As an alternative to storing magnetic tapes offsite in a vault, IT administrators are meeting their storage and backup needs by service level agreements (SLAs) with an SaaS provider, usually on a cost-per-gigabyte-stored and cost-per-data-transferred basis. The client transfers the data meant for storage to the service provider on a set schedule over the SaaS provider’s wide area network or over the Internet&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amazon S3&lt;/strong&gt;&lt;br&gt;
Amazon S3 (Simple Storage Service) provides object storage, which is built for storing and recovering any amount of information or data from anywhere over the internet. It provides this storage through a web services interface. While designed for developers for easier web-scale computing, it provides 99 percent durability and 99.99 percent availability of objects. It can also store computer files up to 5 terabytes in size.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Navigating AWS S3
&lt;/h3&gt;

&lt;p&gt;To begin implementing "Storage as a Service," log in to your AWS Management Console and head over to the &lt;strong&gt;Services&lt;/strong&gt; menu. Under the &lt;strong&gt;Storage&lt;/strong&gt; section, select &lt;strong&gt;S3 (Simple Storage Service)&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;AWS S3 is a highly scalable, secure, and durable storage solution where you can store and retrieve any amount of data at any time. Once you select S3, you’ll be greeted by the S3 dashboard, which serves as the central hub for managing your buckets, objects, and permissions. From here, you can create new storage buckets, define access policies, and integrate S3 with various applications. This step is foundational for setting up your cloud storage environment.  &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%2Ftqrkfuhqmswh1nd479op.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%2Ftqrkfuhqmswh1nd479op.png" alt="S3_1" width="800" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Creating a Bucket in S3
&lt;/h3&gt;

&lt;p&gt;After navigating to the S3 dashboard, the next step is to create a storage container, known as a &lt;strong&gt;bucket&lt;/strong&gt;. Buckets are the foundational storage units in S3, where you can upload, organize, and manage your data.  &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%2Fal3c9frlij1yoogi7lzm.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%2Fal3c9frlij1yoogi7lzm.png" alt="S3_2" width="800" height="331"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Click "Create Bucket"&lt;/strong&gt;:
On the S3 dashboard, locate the "Create Bucket" button at the top. Click it to open the bucket creation wizard.
&lt;/li&gt;
&lt;/ol&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%2F11gbtytfn22lxgairjo9.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%2F11gbtytfn22lxgairjo9.png" alt="S3_3" width="800" height="342"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Specify Bucket Details&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Bucket Name&lt;/strong&gt;: Provide a unique name for your bucket. AWS requires bucket names to be globally unique and follow specific naming conventions (e.g., no spaces, only lowercase).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Region&lt;/strong&gt;: Select the AWS region closest to your users or application to minimize latency and reduce costs.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2F0gh4nyqtqv0zwyyddscl.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%2F0gh4nyqtqv0zwyyddscl.png" alt="S3_4" width="800" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Configure Options&lt;/strong&gt; &lt;em&gt;(Optional)&lt;/em&gt;:

&lt;ul&gt;
&lt;li&gt;Set versioning, tags, or server-side encryption as needed.
&lt;/li&gt;
&lt;li&gt;Decide on access permissions. You can leave the bucket private or configure it for public access, depending on your use case.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&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%2F97x26mzopmy9l234hjsr.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%2F97x26mzopmy9l234hjsr.png" alt="S3_5" width="800" height="302"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Review and Create&lt;/strong&gt;:
Review your settings and click "Create Bucket." Your bucket is now ready to use for storing and managing objects.
&lt;/li&gt;
&lt;/ol&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%2Fwt2nh06gedxjoj32anhg.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%2Fwt2nh06gedxjoj32anhg.png" alt="S3_6" width="800" height="329"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 3: Verify Bucket Creation
&lt;/h3&gt;

&lt;p&gt;Once you have successfully completed the previous steps, you will see a confirmation message indicating that the bucket has been created. In this example, the bucket is named &lt;strong&gt;'bucketshreyacloud'&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;To verify the creation:  &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Navigate back to the S3 dashboard.
&lt;/li&gt;
&lt;li&gt;Locate your newly created bucket in the list of buckets displayed.
&lt;/li&gt;
&lt;li&gt;Click on the &lt;strong&gt;'bucketshreyacloud'&lt;/strong&gt; in this case name to open its details page.
&lt;/li&gt;
&lt;/ol&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%2Fkc5otr974lq8vowu4ay3.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%2Fkc5otr974lq8vowu4ay3.png" alt="S3_7" width="800" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;From here, you can begin configuring the bucket, uploading objects, and managing permissions to tailor it to your use case. Each bucket comes with its own settings, allowing you to customize features such as versioning, encryption, and public access.  &lt;/p&gt;

&lt;h3&gt;
  
  
  Step 4: Uploading an Object to the Bucket
&lt;/h3&gt;

&lt;p&gt;With the &lt;strong&gt;'bucketshreyacloud'&lt;/strong&gt; bucket created, the next step is to upload an object (a file or piece of data) to it. Here's how:  &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Open the Bucket&lt;/strong&gt;:&lt;br&gt;&lt;br&gt;
From the S3 dashboard, click on the &lt;strong&gt;'bucketshreyacloud'&lt;/strong&gt; bucket name to open it.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Click "Upload"&lt;/strong&gt;:&lt;br&gt;&lt;br&gt;
On the bucket's details page, you'll see the &lt;strong&gt;"Upload"&lt;/strong&gt; button. Click it to open the upload wizard.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Add Files&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In the upload wizard, click &lt;strong&gt;"Add files"&lt;/strong&gt; to select files from your local system.
&lt;/li&gt;
&lt;li&gt;Alternatively, you can drag and drop files directly into the wizard.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Set Permissions&lt;/strong&gt; &lt;em&gt;(Optional)&lt;/em&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adjust the object's access permissions if needed (e.g., make it public or restrict access).
&lt;/li&gt;
&lt;li&gt;By default, objects inherit the bucket's permissions.
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Review and Upload&lt;/strong&gt;:&lt;br&gt;&lt;br&gt;
After selecting your files and configuring any necessary options, click &lt;strong&gt;"Upload"&lt;/strong&gt;.  &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Confirmation&lt;/strong&gt;:&lt;br&gt;&lt;br&gt;
Once the upload completes, the object will appear in the bucket's object list. You can click on the object name to view details, including its &lt;strong&gt;URL&lt;/strong&gt;, size, and metadata.  &lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fud1ueddle7bqv1wg7rve.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%2Fud1ueddle7bqv1wg7rve.png" alt="S3_8" width="800" height="299"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Congratulations! You've successfully uploaded an object to your &lt;strong&gt;'bucketshreyacloud'&lt;/strong&gt; bucket. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>cloudcomputing</category>
      <category>learning</category>
    </item>
    <item>
      <title>"Smart Solutions with Serverless: Event-Driven AWS Lambda in Action &amp; Accessing in VPC"</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Sat, 28 Dec 2024 20:32:17 +0000</pubDate>
      <link>https://dev.to/shreya111111/smart-solutions-with-serverless-event-driven-aws-lambda-in-action-378n</link>
      <guid>https://dev.to/shreya111111/smart-solutions-with-serverless-event-driven-aws-lambda-in-action-378n</guid>
      <description>&lt;p&gt;Serverless computing is a cloud computing paradigm that abstracts away server management, allowing developers to focus solely on writing and deploying code.  Here's a breakdown of the core concepts:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;No Server Management&lt;/strong&gt;: In traditional deployments, developers manage servers, including provisioning, scaling, and patching. Serverless computing eliminates this burden. The cloud provider handles infrastructure management, freeing developers to concentrate on application logic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pay-Per-Use Model&lt;/strong&gt;: Serverless platforms charge based on resource consumption, typically execution time and memory used. This translates to cost-effectiveness, especially for applications with variable workloads. You only pay for the resources your code utilizes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Event-Driven Architecture&lt;/strong&gt;: Serverless functions are often triggered by events. These events can originate from various sources like file uploads to cloud storage, changes in databases, or HTTP requests. Functions execute in response to these events, enabling a highly responsive and scalable architecture.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scheduled Execution&lt;/strong&gt;: Functions can also be triggered based on schedules. This is useful for tasks that need to run periodically, such as sending automated reports or data backups.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Popular Serverless Platforms:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;AWS Lambda&lt;/strong&gt;: A serverless compute service offered by Amazon Web Services (AWS). It allows developers to upload code and define triggers for execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Cloud Functions&lt;/strong&gt;: A serverless offering by Google Cloud Platform (GCP). Similar to AWS Lambda, it provides a platform for deploying and running code triggered by events or schedules.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Benefits of Serverless Computing:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Faster Development and Deployment&lt;/strong&gt;: Eliminating server management streamlines development and deployment cycles.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scalability&lt;/strong&gt;: Serverless functions automatically scale based on demand, handling traffic spikes efficiently.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cost-Effectiveness&lt;/strong&gt;: The pay-per-use model ensures you only pay for the resources your code consumes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Focus on Code&lt;/strong&gt;: Developers can focus on writing code without being bogged down by infrastructure management.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Function Creation — Lambda&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Creation of functions with Lambda can take two forms, either direct access of the Lambda Console or through the Serverless framework. I chose to use the Serverless framework, as it made deployment (later) much easier.&lt;/p&gt;

&lt;p&gt;Serverless encourages centralizing all configuration of your functions into a single YML file. The YML file requires the function name as it will be displayed on the Lambda console, the name of the function in your code base, and some configuration on when to execute the function. In our case, we wanted to execute the function on an incoming HTTP request with a method of POST.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Implementation :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Go to AWS Lambda function&lt;/strong&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%2Fh1ze8evn086b588i3bbl.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%2Fh1ze8evn086b588i3bbl.png" alt="Lambda_1" width="800" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Create a Lambda function&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;To create a Lambda function, start by signing in to your AWS Management Console. Navigate to the "Services" tab and select &lt;strong&gt;Lambda&lt;/strong&gt; under the "Compute" category. Once on the Lambda page, click on &lt;strong&gt;Create Function&lt;/strong&gt; and choose the option &lt;strong&gt;Author from scratch&lt;/strong&gt;. You will then need to provide essential details for your function, including a unique &lt;strong&gt;Function name&lt;/strong&gt; (e.g., &lt;em&gt;EventProcessor&lt;/em&gt;) and selecting your preferred &lt;strong&gt;Runtime&lt;/strong&gt;, such as Python 3.x or Node.js 14.x. These initial steps set the foundation for building and deploying your serverless function effectively.&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%2Fqw1g0kdn1s3vcji760i6.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%2Fqw1g0kdn1s3vcji760i6.png" alt="Lambda_2" width="800" height="411"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Lambda function created successfully&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After completing the setup, your Lambda function is successfully created and ready for use. AWS provisions the necessary resources in the background, making your function available to handle triggers and execute code as configured. You can now test the function, integrate it with event sources like API Gateway or S3, and monitor its performance using the built-in tools provided by AWS Lambda.&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%2Fx3tey79d79w7nlwlsev5.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%2Fx3tey79d79w7nlwlsev5.png" alt="Lambda_3" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Type the python code&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A simple AWS Lambda function written in Python can be designed to process events and return a response. The &lt;code&gt;lambda_handler&lt;/code&gt; serves as the entry point, logging the received event, extracting relevant data and constructing a JSON response. For example, the function can greet a user by &lt;code&gt;Hello from lambda&lt;/code&gt; when provided in the event. Once deployed, this Lambda function can be tested with custom events in the AWS Lambda Console, where it processes the input and returns a dynamic response. &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%2F9k3popzt1j664odae0al.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%2F9k3popzt1j664odae0al.png" alt="Lambda_4" width="800" height="394"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Add trigger via API Gateway&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;To trigger an AWS Lambda function using API Gateway in parallel (executing multiple Lambda functions simultaneously), follow these steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Set Up Your Lambda Functions&lt;br&gt;
Ensure that each Lambda function you want to invoke is already created and deployed in AWS. These functions will be triggered by API Gateway.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create an API in API Gateway&lt;br&gt;
Go to the API Gateway service in the AWS Management Console.&lt;br&gt;
Create a new HTTP API or REST API.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&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%2Fogfplg6rdfkv72gybjho.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%2Fogfplg6rdfkv72gybjho.png" alt="Lambda_5" width="800" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Great! Now that the trigger is created, you can test and optimize it as needed. &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%2Fsoz6i5cp989c53me9qsq.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%2Fsoz6i5cp989c53me9qsq.png" alt="Lambda_6" width="800" height="343"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Configure API Gateway&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to API Gateway in the AWS Management Console.&lt;/li&gt;
&lt;li&gt;Choose the Lambda function you just wrote.&lt;/li&gt;
&lt;li&gt;Deploy the API to a stage (e.g., dev).&lt;/li&gt;
&lt;/ul&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%2Fzhxc690qx5q24whuo7jy.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%2Fzhxc690qx5q24whuo7jy.png" alt="Lambda_7" width="800" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Run the Code&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
Click on the API Gateway to get the function running. Thus, Event-Driven AWS Lambda in Action&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%2Fbgotw8inrecszoreb85j.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%2Fbgotw8inrecszoreb85j.png" alt="Lambda_8" width="800" height="241"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Create a VPC for the serverless Lambda setup:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1. Create a New VPC&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to the &lt;strong&gt;VPC&lt;/strong&gt; dashboard in AWS and create a new VPC with a CIDR block (e.g., &lt;code&gt;10.0.0.0/16&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;2. Create Subnets&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Public Subnet&lt;/strong&gt;: Assign a CIDR block (e.g., &lt;code&gt;10.0.0.0/24&lt;/code&gt;), enable public IP assignment, and tag it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Private Subnets&lt;/strong&gt;: Assign different CIDR blocks (e.g., &lt;code&gt;10.0.1.0/24&lt;/code&gt;), and do not assign public IPs.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;3. Set Up an Internet Gateway&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create an &lt;strong&gt;Internet Gateway&lt;/strong&gt;, attach it to the VPC, and update the &lt;strong&gt;Public Subnet's&lt;/strong&gt; route table to route internet traffic (&lt;code&gt;0.0.0.0/0&lt;/code&gt;) to the gateway.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;4. Set Up a NAT Gateway (for Private Subnets)&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Allocate an &lt;strong&gt;Elastic IP&lt;/strong&gt;, create a &lt;strong&gt;NAT Gateway&lt;/strong&gt; in the &lt;strong&gt;Public Subnet&lt;/strong&gt;, and update the &lt;strong&gt;Private Subnets'&lt;/strong&gt; route tables to route internet traffic (&lt;code&gt;0.0.0.0/0&lt;/code&gt;) to the NAT Gateway.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;5. Configure Security Groups&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create and configure &lt;strong&gt;Security Groups&lt;/strong&gt; for Lambda, API Gateway, RDS, and any other services, ensuring the appropriate inbound and outbound rules.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;6. Configure Lambda to Use VPC&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;In the &lt;strong&gt;Lambda Console&lt;/strong&gt;, configure the function to run in the created VPC, attach it to the &lt;strong&gt;Private Subnets&lt;/strong&gt;, and use the correct &lt;strong&gt;Security Group&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&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%2F65ymhwb7zofgxsp0g0sv.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%2F65ymhwb7zofgxsp0g0sv.png" alt="VPC" width="800" height="163"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;7. Set Up API Gateway&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create an &lt;strong&gt;API Gateway&lt;/strong&gt;, integrate it with the Lambda function, and deploy the API to a stage (e.g., &lt;code&gt;dev&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;8. Test and Monitor&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Test the Lambda function via API Gateway, and monitor performance using &lt;strong&gt;CloudWatch&lt;/strong&gt; logs.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;This VPC setup allows Lambda to run in private subnets, access RDS or other private services, and still have internet access via the NAT Gateway for external API calls.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;By understanding serverless computing and implementing a basic function with event-driven or scheduled execution, you've gained valuable practical experience in this rapidly evolving cloud development paradigm.  This knowledge can be applied to build more complex serverless applications that are scalable, cost-effective, and agile.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloud</category>
      <category>lambda</category>
      <category>awsvpc</category>
    </item>
    <item>
      <title>Integrating React with Django</title>
      <dc:creator>Shreya Nalawade</dc:creator>
      <pubDate>Mon, 31 Jul 2023 17:59:59 +0000</pubDate>
      <link>https://dev.to/shreya111111/integrating-react-with-django-13lb</link>
      <guid>https://dev.to/shreya111111/integrating-react-with-django-13lb</guid>
      <description>&lt;p&gt;Integrating React with Django involves setting up Django to serve the React frontend and enabling communication between the frontend and backend. Here's a detailed step-by-step guide to achieve this integration. Integrating React with Django offers numerous benefits and opens up a world of possibilities for building modern web applications. By combining these technologies, developers can leverage the strengths of both frameworks to create highly interactive, dynamic, and responsive user interfaces while utilizing Django's robust backend capabilities.&lt;/p&gt;

&lt;p&gt;One of the primary advantages of using React with Django is the seamless user experience it provides. React's component-based architecture enables developers to build reusable UI components, resulting in a more modular and maintainable codebase. This modularity allows for easier code organization and promotes collaborative development among frontend and backend teams.&lt;/p&gt;

&lt;p&gt;Moreover, React's virtual DOM efficiently updates only the necessary parts of the user interface, reducing the number of full page reloads and enhancing overall application performance. This optimization can significantly improve the user experience, making the application feel snappy and responsive.&lt;/p&gt;

&lt;p&gt;Integrating React with Django also enables developers to create single-page applications (SPAs). SPAs offer a more fluid and seamless user experience by loading the initial page and subsequently updating the content dynamically without requiring a full page reload. Django serves as the backend API, providing data to React, which handles the frontend rendering and user interactions. This architecture enhances application performance and reduces server load, leading to faster load times and better scalability.&lt;/p&gt;

&lt;p&gt;Another advantage lies in the vibrant React ecosystem, which offers a plethora of third-party libraries and tools for tasks such as state management (e.g., Redux, MobX), form handling (e.g., Formik, React Hook Form), and data visualization (e.g., Victory, Chart.js). Developers can easily integrate these libraries into their React components to add advanced functionality to the application. Furthermore, React's mobile development counterpart, React Native, can be seamlessly integrated with Django as well. This allows developers to share a significant portion of the application's codebase between the web and mobile versions, reducing development.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Create a new Django project
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;django-admin startproject projectname

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create a new Django app
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd projectname
python manage.py startapp appname

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Set Up React App
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir appname/frontend

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Initialize a new React app
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx create-react-app .

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Build the React app to generate the production build files:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm run build

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Open the Django app's views.py file (appname/views.py) and create a view to serve the React app's index.html.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;from django.shortcuts import render

def index(request):
    return render(request, 'frontend/build/index.html')

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Set Up URLs
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;from django.urls import path
from . import views

urlpatterns = [
    # Other URL patterns go here
    path('', views.index, name='index'),
]

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Configure Django to serve static files from the React build directory. Add the following to the project's settings.py file.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import os

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'appname/frontend/build/static'),
]

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

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Run Django Development Server
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;python manage.py runserver

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

&lt;/div&gt;



&lt;p&gt;Visit&lt;u&gt; &lt;a href="http://localhost:8000" rel="noopener noreferrer"&gt;http://localhost:8000&lt;/a&gt;&lt;/u&gt; to see your Django app with the integrated React frontend.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>react</category>
      <category>django</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
