<?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: Agastya Khati</title>
    <description>The latest articles on DEV Community by Agastya Khati (@agastya_khati_f72c89077c8).</description>
    <link>https://dev.to/agastya_khati_f72c89077c8</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3438795%2F951ecff6-9e76-4c21-9c8e-3f79b6c4ecdc.jpg</url>
      <title>DEV Community: Agastya Khati</title>
      <link>https://dev.to/agastya_khati_f72c89077c8</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/agastya_khati_f72c89077c8"/>
    <language>en</language>
    <item>
      <title>Warp: An Evidence Graph for Procurement Incidents</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Mon, 05 Oct 2026 06:39:22 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/warp-an-evidence-graph-for-procurement-incidents-4l1d</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/warp-an-evidence-graph-for-procurement-incidents-4l1d</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/sanity-2026-09-16"&gt;Sanity Challenge, Path Two: Vibe-Code Something Strange&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;Warp&lt;/strong&gt;, an AI-assisted procurement incident-response workspace for teams that need to choose a replacement supplier under time pressure.&lt;/p&gt;

&lt;p&gt;A supplier failure creates a difficult problem. Procurement needs an alternative quickly. Operations needs to protect production. Quality needs to check certificates and specifications. Legal needs a defensible record before a new agreement is prepared. In many companies, these facts live in separate PDFs, supplier websites, inboxes, spreadsheets, and browser tabs.&lt;/p&gt;

&lt;p&gt;Warp brings that investigation into one workflow. It takes an incident, researches alternative suppliers, extracts facts from documents, compares claims against evidence, ranks the options, and prepares a recommendation. It then stops. A person must approve, reject, or request more evidence before the workflow can continue.&lt;/p&gt;

&lt;p&gt;The product rule is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;AI prepares. Humans authorize.&lt;/p&gt;
&lt;/blockquote&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuxqn7rgr4dp37580uyu9.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuxqn7rgr4dp37580uyu9.png" alt=" " width="800" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  The demo scenario
&lt;/h3&gt;

&lt;p&gt;The demo starts with an incident involving &lt;strong&gt;Pacific Components Ltd.&lt;/strong&gt; The company supplies the PX-17 Power Controller. Only eight days of inventory remain. The estimated business exposure is $2.4 million.&lt;/p&gt;

&lt;p&gt;Warp evaluates three alternative suppliers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Apex Electronics&lt;/strong&gt; has a credible certification record, but a longer lead time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nexus Manufacturing&lt;/strong&gt; has a clean business-registration record, direct PX-17 compatibility, and expedited shipping evidence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Shenzhen Rapid Parts&lt;/strong&gt; offers the lowest price, but two critical claims fail verification.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Shenzhen claims it was established in 2018. Its business-registration evidence shows a formation date in 2021. It also provides an ISO 9001 certificate, but the certificate registry does not return a matching record.&lt;/p&gt;

&lt;p&gt;Warp does not hide these failures inside a black-box risk score. It keeps the supplier claim, the contradicting registration field, the certificate result, the document source, and the final verdict connected and visible.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why Sanity is central to Warp
&lt;/h3&gt;

&lt;p&gt;Sanity is Warp’s durable &lt;strong&gt;supplier evidence graph&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A normal database model could store a supplier score and a short explanation. That would not be enough for this problem. Procurement teams need to inspect the path from a recommendation back to its evidence.&lt;/p&gt;

&lt;p&gt;Warp uses Sanity to model the investigation as connected documents:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;evidenceIncident stores the disruption context.&lt;/li&gt;
&lt;li&gt;evidenceSupplier stores each candidate supplier.&lt;/li&gt;
&lt;li&gt;evidenceClaim stores material supplier statements, such as “ISO 9001 Certified” or “Established 2018.”&lt;/li&gt;
&lt;li&gt;evidenceDocument stores the document that supports or challenges a claim.&lt;/li&gt;
&lt;li&gt;evidenceSource stores external evidence, including registries and web research.&lt;/li&gt;
&lt;li&gt;evidenceDecision stores the recommendation, risk rationale, and human decision.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The relationship is deliberate:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;incident → supplier → claim → document or source → extracted field → verification result → decision → human approval&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This means a conflict is not an error that gets overwritten. It is a first-class part of the graph.&lt;/p&gt;

&lt;p&gt;For example, the claim “Established 2018” and the business-registration field “FORMED 2021-06-08” can both exist in Sanity. Warp links them to the same supplier and shows the result as a conflict. The human reviewer can see what was claimed, what was found, and why the recommendation changed.&lt;/p&gt;

&lt;p&gt;The Evidence screen reads this graph through GROQ. It presents verified claims, conflicts, unverified claims, documents, external sources, and the recommended supplier in a custom Next.js interface.&lt;/p&gt;

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

&lt;p&gt;Live app: &lt;a href="https://aegisflow-ai.vercel.app" rel="noopener noreferrer"&gt;aegisflow-ai.vercel.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/XiDA-X3THzc" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;The video walkthrough shows the complete decision path:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The procurement incident and business impact.&lt;/li&gt;
&lt;li&gt;The supplier investigation and recommendation.&lt;/li&gt;
&lt;li&gt;The Sanity evidence graph.&lt;/li&gt;
&lt;li&gt;Claim-level provenance and conflicting evidence.&lt;/li&gt;
&lt;li&gt;Document extraction and source records.&lt;/li&gt;
&lt;li&gt;The human approval state.&lt;/li&gt;
&lt;li&gt;The integration activity ledger.&lt;/li&gt;
&lt;li&gt;The append-only audit trail.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;Public repository: &lt;a href="https://github.com/kris70lesgo/Warp" rel="noopener noreferrer"&gt;github.com/kris70lesgo/Warp&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository includes the Next.js application, the Sanity Studio, Sanity schemas, the evidence-graph queries, integration clients, and scripts for seeding the baseline graph.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Build Process
&lt;/h2&gt;

&lt;p&gt;I used &lt;strong&gt;Codex&lt;/strong&gt; as my AI-native development environment. I built Warp with Next.js for the application and Sanity for the structured evidence layer.&lt;/p&gt;

&lt;p&gt;The project started from a product question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;What should an AI procurement tool do when evidence is incomplete or contradictory?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;My answer became the main product constraint: the AI can research, extract, compare, score, and draft. It cannot silently turn an uncertain conclusion into an approved business action.&lt;/p&gt;

&lt;p&gt;The prompt that changed the architecture was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Make Sanity the supplier evidence graph. The app investigates suppliers from multiple sources. Sanity must hold the complete evidence state for every supplier, including claims, documents, sources, conflicts, and final decisions.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;At first, the model treated Sanity as a place to save a supplier summary. That produced the wrong application. A summary tells a user what the system concluded, but it loses the path that produced the conclusion.&lt;/p&gt;

&lt;p&gt;I corrected the model in three ways.&lt;/p&gt;

&lt;p&gt;First, I required separate records for each supplier claim and each piece of supporting or contradicting evidence. A supplier record could no longer hold only a final score.&lt;/p&gt;

&lt;p&gt;Second, I required provenance. Every material fact needs to link back to a document field, external source, or explicit fallback. The UI must show whether an input is LIVE, LOCAL, or DEMO SEEDED.&lt;/p&gt;

&lt;p&gt;Third, I separated an AI recommendation from a human decision. The recommendation can be stored and explained, but it cannot advance the workflow by itself.&lt;/p&gt;

&lt;p&gt;These constraints led to the evidence graph. They also made the app more useful. Instead of asking users to trust a score, Warp lets them inspect the score’s inputs.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prompts that worked
&lt;/h3&gt;

&lt;p&gt;The strongest prompts described a rule, an actor, and a proof requirement. For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Do not overwrite contradictory claims. Preserve the supplier statement and the evidence that challenges it. Make the conflict queryable and visible in the UI.”&lt;/p&gt;

&lt;p&gt;“Show the provenance for every material claim. A human reviewer must be able to trace a recommendation back to a document field or source.”&lt;/p&gt;

&lt;p&gt;“Treat a zero-result web search as evidence of missing corroboration, not as an empty result.”&lt;/p&gt;

&lt;p&gt;“AI may prepare a decision. Only a human may approve, reject, or send an agreement to signature.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;These prompts produced better results than broad requests such as “build a procurement dashboard with Sanity.” Broad prompts produced generic cards and charts. The tighter prompts produced a workflow with rules, evidence links, and clear responsibility boundaries.&lt;/p&gt;

&lt;h3&gt;
  
  
  Where the model got stuck
&lt;/h3&gt;

&lt;p&gt;The hardest part was keeping the system honest when an integration was not available.&lt;/p&gt;

&lt;p&gt;A model will often fill a UI with plausible output, even when a live API did not respond. That would be dangerous in a supplier-verification workflow.&lt;/p&gt;

&lt;p&gt;I added an Integration Activity Ledger to fix this. Every provider call is recorded with its mode:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;LIVE means the provider responded.&lt;/li&gt;
&lt;li&gt;LOCAL means Warp used a local implementation or extracted fixture.&lt;/li&gt;
&lt;li&gt;DEMO SEEDED means Warp used a known demo record and shows that fact.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This rule applies to the visible product. The app does not label a fallback as a live result.&lt;/p&gt;

&lt;p&gt;I also kept Sanity distinct from the operational database. Sanity holds the durable, connected evidence graph. Xano holds operational incident records and the append-only event stream. This separation keeps the explanation layer and the workflow ledger clear.&lt;/p&gt;

&lt;h3&gt;
  
  
  The workflow
&lt;/h3&gt;

&lt;p&gt;A Warp response follows these stages:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Analyse the incident and business exposure.&lt;/li&gt;
&lt;li&gt;Search for supplier and market evidence.&lt;/li&gt;
&lt;li&gt;Extract relevant fields from supplier documents.&lt;/li&gt;
&lt;li&gt;Check claims against source evidence.&lt;/li&gt;
&lt;li&gt;Score alternatives with transparent risk dimensions.&lt;/li&gt;
&lt;li&gt;Persist the investigation as connected Sanity evidence records.&lt;/li&gt;
&lt;li&gt;Prepare a recommendation.&lt;/li&gt;
&lt;li&gt;Require human review.&lt;/li&gt;
&lt;li&gt;Prepare documents only after approval.&lt;/li&gt;
&lt;li&gt;Record every important action in the audit trail.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The important design choice is step six. The recommendation is not the only output of the investigation. The evidence graph is also an output. It lets the system answer future questions without rebuilding the investigation from scratch.&lt;/p&gt;

&lt;h3&gt;
  
  
  What I did not use
&lt;/h3&gt;

&lt;p&gt;I did not use Sanity App SDK or Sanity Workflows in this version. I built a custom Next.js interface and a dedicated Sanity Studio for the evidence model. I wanted the challenge entry to focus on one idea executed deeply: structured supplier evidence that stays connected through an investigation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sanity Project Details
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Sanity project ID: af8ykvwc&lt;/li&gt;
&lt;li&gt;Dataset: production&lt;/li&gt;
&lt;li&gt;Frontend query language: GROQ&lt;/li&gt;
&lt;li&gt;Sanity Studio: included in the repository under /sanity&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sanity is the durable record of a Warp investigation.&lt;/p&gt;

&lt;p&gt;One investigation can persist the incident context, candidate suppliers, supplier claims, documents, extracted fields, web and registry sources, verification results, conflicts, recommendation, and human decision.&lt;/p&gt;

&lt;p&gt;The schema preserves disagreement. If a supplier statement conflicts with a registration record or certificate check, Warp keeps both records. It marks the claim as VERIFIED, CONFLICT, or UNVERIFIED, but it does not erase the source material.&lt;/p&gt;

&lt;p&gt;That is the reason Sanity is central to the product. It changes the system from an AI tool that produces an answer into a decision workspace that preserves the evidence behind the answer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Agent Session
&lt;/h2&gt;

&lt;p&gt;I am not embedding the raw agent session because it contained development credentials during integration testing. Any public agent session should be reviewed and scrubbed before publishing.&lt;/p&gt;

&lt;p&gt;Warp uses Sanity to make supplier decisions structured, queryable, and reviewable.&lt;/p&gt;

&lt;p&gt;AI prepares. Humans authorize.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>sanitychallenge</category>
      <category>sanity</category>
      <category>ai</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Mon, 07 Sep 2026 06:59:45 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/-4hcd</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/-4hcd</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj" class="crayons-story__hidden-navigation-link"&gt;Funded: Making Room for Education Through Generosity&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
      &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj" class="crayons-article__context-note crayons-article__context-note__feed"&gt;&lt;p&gt;DEV Weekend Challenge: Generosity Edition Submission 💜&lt;/p&gt;

&lt;/a&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/agastya_khati_f72c89077c8" class="crayons-avatar  crayons-avatar--l  "&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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3438795%2F951ecff6-9e76-4c21-9c8e-3f79b6c4ecdc.jpg" alt="agastya_khati_f72c89077c8 profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/agastya_khati_f72c89077c8" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Agastya Khati
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Agastya Khati
                
                
              
              &lt;div id="story-author-preview-content-4593018" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/agastya_khati_f72c89077c8" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3438795%2F951ecff6-9e76-4c21-9c8e-3f79b6c4ecdc.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Agastya Khati&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Sep 7&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj" id="article-link-4593018"&gt;
          Funded: Making Room for Education Through Generosity
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/devchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;devchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/weekendchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;weekendchallenge&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;7&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              &lt;span class="hidden s:inline"&gt;Add&amp;nbsp;Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
    </item>
    <item>
      <title>Funded: Making Room for Education Through Generosity</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Mon, 07 Sep 2026 06:59:33 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/funded-making-room-for-education-through-generosity-3ioj</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/weekend-2026-09-03"&gt;Weekend Challenge: Generosity Edition&lt;/a&gt;&lt;/em&gt;)&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;Funded&lt;/strong&gt;, a student-focused crowdfunding platform designed around generosity in education.&lt;/p&gt;

&lt;p&gt;Students can create fundraisers for tuition, books, housing, technology, course access, and other learning costs. Donors can discover real student stories, listen to an AI-generated audio introduction, and preview donation options.&lt;/p&gt;

&lt;p&gt;My goal was to make asking for educational support feel more human, transparent, and accessible. Funded helps students turn a few honest notes into a respectful campaign story, while giving donors clearer ways to understand who they are helping and why.&lt;/p&gt;

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

&lt;p&gt;The demo shows the complete Funded experience:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discovering live student fundraisers&lt;/li&gt;
&lt;li&gt;Creating a campaign with the Gemini Story Coach&lt;/li&gt;
&lt;li&gt;Publishing the fundraiser instantly to the live feed&lt;/li&gt;
&lt;li&gt;Listening to an ElevenLabs-generated campaign narration&lt;/li&gt;
&lt;li&gt;Previewing a Dodo Payments checkout flow without making a real payment&lt;/li&gt;
&lt;li&gt;Donating through Phantom using Solana Devnet, with an on-chain transaction receipt&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/yGF7_tdRrQs" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/kris70lesgo/funded" rel="noopener noreferrer"&gt;https://github.com/kris70lesgo/funded&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Funded is a React and TypeScript web application with a custom frontend focused on a calm, editorial crowdfunding experience. The interface uses a clean layout, warm student imagery, clear campaign cards, and simple donation flows so the product feels trustworthy rather than overwhelming.&lt;/p&gt;

&lt;h3&gt;
  
  
  Campaign creation and publishing
&lt;/h3&gt;

&lt;p&gt;The fundraiser creation flow collects the information a donor actually needs to understand a request:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fundraiser title&lt;/li&gt;
&lt;li&gt;Education category&lt;/li&gt;
&lt;li&gt;Funding goal&lt;/li&gt;
&lt;li&gt;Student name&lt;/li&gt;
&lt;li&gt;Cover image&lt;/li&gt;
&lt;li&gt;Personal story&lt;/li&gt;
&lt;li&gt;Fundraiser updates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once a campaign is submitted, it is stored in Supabase and receives a unique slug-based URL. The application then redirects the student to their live fundraiser page. The campaign is also available in the Discover feed so other users can find it immediately.&lt;/p&gt;

&lt;p&gt;Campaign owners can delete their own fundraiser through an in-app confirmation interface. This was important because students should remain in control of the campaigns and stories they publish.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supabase
&lt;/h3&gt;

&lt;p&gt;Supabase is used for authentication and campaign data storage.&lt;/p&gt;

&lt;p&gt;The application supports normal email and password sign-up and sign-in. After a user signs in, the interface updates to show their account state instead of showing the Sign in action.&lt;/p&gt;

&lt;p&gt;Fundraiser records are stored in Supabase, including the title, category, story, funding goal, creator details, campaign progress, image, and publication date. The Discover page retrieves these campaigns so the public feed reflects newly published fundraisers instead of only showing static content.&lt;/p&gt;

&lt;p&gt;I also added sample fundraiser data to Supabase so the demo has realistic student campaigns available immediately. This helps demonstrate the complete donor experience from the first visit.&lt;/p&gt;

&lt;h3&gt;
  
  
  Google Gemini: Story Coach
&lt;/h3&gt;

&lt;p&gt;One of the biggest barriers for students is knowing how to write a fundraiser story. Students may have a real need and a strong goal, but still struggle to explain it in a way that is clear, respectful, and comfortable to share.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;Gemini Story Coach&lt;/strong&gt; solves this by taking a few student-provided notes, such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What they are studying&lt;/li&gt;
&lt;li&gt;What they need funding for&lt;/li&gt;
&lt;li&gt;Their achievements or current situation&lt;/li&gt;
&lt;li&gt;Their future goals&lt;/li&gt;
&lt;li&gt;Why this support matters now&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemini then helps create a well-structured campaign story. The output is designed to be supportive and concise, not exaggerated or manipulative. The student can always edit the story before publishing, keeping their own voice and control over the final fundraiser.&lt;/p&gt;

&lt;h3&gt;
  
  
  ElevenLabs: Audio campaign stories
&lt;/h3&gt;

&lt;p&gt;Every fundraiser has the option to include an AI-generated audio narration powered by &lt;strong&gt;ElevenLabs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The narration turns the campaign story into a spoken introduction that donors can play directly on the fundraiser page. This adds an emotional and accessible layer to the platform. Instead of only reading a block of text, a donor can listen to the student’s goals and reason for fundraising.&lt;/p&gt;

&lt;p&gt;This feature is useful for accessibility, mobile users, and donors who connect more strongly with a spoken story. It also makes each fundraiser page feel more personal without requiring students to record their own audio.&lt;/p&gt;

&lt;h3&gt;
  
  
  Solana and Phantom
&lt;/h3&gt;

&lt;p&gt;Funded supports a Solana donation flow through Phantom.&lt;/p&gt;

&lt;p&gt;For the hackathon demo, the integration uses &lt;strong&gt;Solana Devnet&lt;/strong&gt;. When a donor chooses to contribute with SOL, the application prepares the transaction and asks the donor to approve it in their Phantom wallet. Funded never receives or stores wallet private keys.&lt;/p&gt;

&lt;p&gt;After approval, the transaction can be referenced as an on-chain receipt. This creates a transparent record of the contribution and demonstrates how blockchain can support trust in crowdfunding.&lt;/p&gt;

&lt;p&gt;Using Solana also helps show a future direction for Funded: transparent, low-friction support that can be verified publicly while still keeping the donor in control of their wallet.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dodo Payments
&lt;/h3&gt;

&lt;p&gt;Funded also includes a Dodo Payments checkout flow for donors who prefer a familiar checkout experience.&lt;/p&gt;

&lt;p&gt;For this hackathon demo, the Dodo checkout is shown as a preview only. No real payment is intentionally completed. This lets the project demonstrate how a traditional payment flow would fit into the platform while keeping the demo safe and focused on the user journey.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why these technologies matter together
&lt;/h3&gt;

&lt;p&gt;Funded combines these technologies to address different parts of the generosity experience:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Supabase&lt;/strong&gt; makes fundraisers persistent, live, and manageable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Google Gemini&lt;/strong&gt; helps students communicate their needs with confidence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;ElevenLabs&lt;/strong&gt; gives fundraiser stories a more personal and accessible voice.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Solana&lt;/strong&gt; provides transparent, wallet-controlled contributions with on-chain proof.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dodo Payments&lt;/strong&gt; provides a familiar checkout path for future real-world contributions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Together, these tools help turn generosity into something that is easier to ask for, easier to understand, and easier to trust.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Solana&lt;/strong&gt; — Funded integrates Phantom wallet donations on Solana Devnet. Donors approve transactions in their own wallet, and the resulting transaction can act as transparent, public proof of support.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of ElevenLabs&lt;/strong&gt; — Funded generates playable audio narrations for fundraiser stories using ElevenLabs. This makes campaigns more personal and accessible for donors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Google AI&lt;/strong&gt; — Funded uses Gemini as a Story Coach that helps students transform a few honest notes into a clear, respectful, and shareable fundraiser story while keeping the student in control of the final content.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
    </item>
    <item>
      <title>Fruit Dash: A Solstice Platformer with Binary Code Gates</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Sat, 20 Jun 2026 11:06:26 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/fruit-dash-a-solstice-platformer-with-binary-code-gates-2jmi</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/fruit-dash-a-solstice-platformer-with-binary-code-gates-2jmi</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/june-game-jam-2026-06-03"&gt;June Solstice Game Jam&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;Fruit Dash&lt;/strong&gt;, a lightweight 2D browser platformer inspired by the bright, playful energy of June and the June Solstice.&lt;/p&gt;

&lt;p&gt;Fruit Dash is a colorful pixel-art platformer where the player chooses a character, enters a 50-level world, collects fruit, avoids traps, fights enemies, activates checkpoints, and clears each stage by reaching the end flag.&lt;/p&gt;

&lt;p&gt;The game includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;50 generated platforming levels&lt;/li&gt;
&lt;li&gt;Character selection&lt;/li&gt;
&lt;li&gt;Level selector&lt;/li&gt;
&lt;li&gt;Fruit collection&lt;/li&gt;
&lt;li&gt;Jumping and double jumping&lt;/li&gt;
&lt;li&gt;Fireball/powerball attacks&lt;/li&gt;
&lt;li&gt;Enemies that scale by level&lt;/li&gt;
&lt;li&gt;Checkpoints and end flags&lt;/li&gt;
&lt;li&gt;Saws, spikes, fire traps, arrows, fans, trampolines, moving platforms, boxes, and surfaces&lt;/li&gt;
&lt;li&gt;Background music with mute/unmute control&lt;/li&gt;
&lt;li&gt;Mobile and tablet touch controls&lt;/li&gt;
&lt;li&gt;Turing Gate binary puzzles on milestone levels&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For the June Solstice theme, I wanted the game to feel like a bright seasonal arcade adventure: colorful, energetic, full of motion, and centered around progression. The solstice is a turning point in the year, and Fruit Dash mirrors that through the way each level moves the player forward into new hazards, enemies, and mechanics.&lt;/p&gt;

&lt;p&gt;I also added a specific Alan Turing-inspired mechanic: &lt;strong&gt;Turing Gates&lt;/strong&gt;. On milestone levels, the exit is locked behind a small binary code puzzle. The player must shoot three binary switches until the bits match the target code. This connects the platforming gameplay to computation, binary logic, code-breaking, and Turing’s legacy in computer science.&lt;/p&gt;

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

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/jbFF8K4B-w8"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;GitHub repository:&lt;br&gt;&lt;br&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/kris70lesgo" rel="noopener noreferrer"&gt;
        kris70lesgo
      &lt;/a&gt; / &lt;a href="https://github.com/kris70lesgo/fruitdash" rel="noopener noreferrer"&gt;
        fruitdash
      &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;Fruit Dash&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Fruit Dash is a lightweight 2D browser platformer built for the June Solstice Game Jam. It is a colorful fruit-collecting platformer about movement, progression, and small moments of code-breaking.&lt;/p&gt;
&lt;p&gt;The game runs directly in the browser with plain HTML, CSS, and JavaScript. No heavy game engine is required.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Play&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Live demo:&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;https://game-jade-one-25.vercel.app
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Local run:&lt;/p&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;python3 -m http.server 4173&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Then open:&lt;/p&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;http://127.0.0.1:4173/game-src/index.html
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;50 generated platforming levels&lt;/li&gt;
&lt;li&gt;Home screen, level selector, and character selection&lt;/li&gt;
&lt;li&gt;Fruit collection with multiple fruit types&lt;/li&gt;
&lt;li&gt;Jumping, double jumping, checkpoints, and end flags&lt;/li&gt;
&lt;li&gt;Tiered enemies: mushrooms, Vomfy, slimes, and mixed late-game waves&lt;/li&gt;
&lt;li&gt;Fireball/powerball attack with character-specific colors&lt;/li&gt;
&lt;li&gt;Traps and movement tools: saws, spikes, fire, arrows, fans, trampolines, moving platforms, boxes, and surfaces&lt;/li&gt;
&lt;li&gt;Turing Gates on milestone levels with binary switch puzzles&lt;/li&gt;
&lt;li&gt;Looping background music with mute/unmute control&lt;/li&gt;
&lt;li&gt;Touch controls for mobile and tablet, including a fire button&lt;/li&gt;
&lt;li&gt;Vercel-friendly root entry page&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Controls&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Move: &lt;code&gt;A/D&lt;/code&gt; or…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/kris70lesgo/fruitdash" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Live demo:&lt;br&gt;&lt;br&gt;
&lt;a href="https://game-jade-one-25.vercel.app" rel="noopener noreferrer"&gt;https://game-jade-one-25.vercel.app&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Fruit Dash is built with plain &lt;strong&gt;HTML, CSS, and JavaScript&lt;/strong&gt;. I intentionally avoided a heavy game engine so the game would stay lightweight, easy to deploy, and fully controllable in the browser.&lt;/p&gt;

&lt;p&gt;The game runs on an HTML canvas. The player, enemies, fruits, traps, projectiles, platforms, checkpoints, Turing Gates, and HUD are all drawn and updated manually in JavaScript.&lt;/p&gt;

&lt;p&gt;The visual style comes from pixel-art PNG assets and sprite sheets. The game uses sprites for characters, fruits, terrain, traps, enemies, fireballs, checkpoints, and UI elements.&lt;/p&gt;

&lt;p&gt;The level system is generated in code. Each level creates a different combination of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ground platforms&lt;/li&gt;
&lt;li&gt;Floating platforms&lt;/li&gt;
&lt;li&gt;Fruits&lt;/li&gt;
&lt;li&gt;Boxes&lt;/li&gt;
&lt;li&gt;Checkpoints&lt;/li&gt;
&lt;li&gt;End flags&lt;/li&gt;
&lt;li&gt;Moving platforms&lt;/li&gt;
&lt;li&gt;Hazards&lt;/li&gt;
&lt;li&gt;Trampolines&lt;/li&gt;
&lt;li&gt;Fans&lt;/li&gt;
&lt;li&gt;Enemies&lt;/li&gt;
&lt;li&gt;Turing Gates on milestone levels&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Difficulty increases as the level number rises. Early levels focus on movement and collection. Later levels introduce more enemies, hazards, and tighter platforming situations.&lt;/p&gt;

&lt;p&gt;Enemies are introduced by level tier:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Early levels use mushroom enemies&lt;/li&gt;
&lt;li&gt;After level 10, Vomfy enemies appear&lt;/li&gt;
&lt;li&gt;After level 30, slimes appear&lt;/li&gt;
&lt;li&gt;After level 40, enemy types are mixed together&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The player can shoot fireballs using &lt;code&gt;Enter&lt;/code&gt;, mouse click, tap, or the mobile fire button. Fireballs use sprite-sheet animation and have character-specific colors. They disappear when they hit enemies, platforms, traps, switches, or other solid objects.&lt;/p&gt;

&lt;p&gt;For the Turing-inspired mechanic, levels &lt;code&gt;10&lt;/code&gt;, &lt;code&gt;20&lt;/code&gt;, &lt;code&gt;30&lt;/code&gt;, &lt;code&gt;40&lt;/code&gt;, and &lt;code&gt;50&lt;/code&gt; include &lt;strong&gt;Turing Gates&lt;/strong&gt;. Each gate displays a 3-bit binary target. The player shoots three bit switches to toggle them between &lt;code&gt;0&lt;/code&gt; and &lt;code&gt;1&lt;/code&gt;. When the current bit pattern matches the target, the exit unlocks.&lt;/p&gt;

&lt;p&gt;I also added background music. The original audio file was an OGG file around 11 MB, which felt too large for a small browser game. I used FFmpeg to convert it into a smaller MP3 file, reducing it to around 4.1 MB and improving browser compatibility. The music loops after the first player interaction because browsers usually block autoplay audio until the user clicks, taps, or presses a key.&lt;/p&gt;

&lt;p&gt;For mobile support, I added touch controls that appear automatically on touch screens. Mobile and tablet players can move, jump, and fire without a keyboard.&lt;/p&gt;

&lt;p&gt;The game is deployed as a static site on Vercel. I also added a root &lt;code&gt;index.html&lt;/code&gt; so the deployed URL opens correctly instead of returning a 404.&lt;/p&gt;

&lt;h2&gt;
  
  
  Challenges I Faced
&lt;/h2&gt;

&lt;p&gt;One of the biggest challenges was making sure the collision system matched the visuals. At one point, some platforms had collision but were not visibly drawn because the wrong part of the terrain sprite sheet was being used. This made the character look like they were standing on invisible platforms. I fixed this by correcting the terrain tile coordinates and adding safer fallback drawing for platform types.&lt;/p&gt;

&lt;p&gt;Generated level quality was another major challenge. Since levels are built in code, some objects were originally placed in awkward spots. Fruits could appear in cramped areas that were hard or impossible to reach. Fans could appear under platforms, pushing the player directly into a ceiling. I added a cleanup pass to the level generator that checks fruit placement, reduces overlapping fruit clusters, and only places fans where the upward air path is actually useful.&lt;/p&gt;

&lt;p&gt;The arrow trap also needed redesign. Initially, touching an arrow restarted the player, which felt unfair and not very meaningful. I changed arrows into directional boosters so they become a movement mechanic instead of just another punishment.&lt;/p&gt;

&lt;p&gt;Enemy sprite alignment was tricky too. Some enemy sprite sheets had transparent padding, so enemies looked like they were floating even when their collision boxes were touching the ground. I adjusted enemy drawing offsets so their feet visually line up with the platform.&lt;/p&gt;

&lt;p&gt;Adding Turing Gates required balancing the puzzle with the platforming. I did not want to turn the whole game into a slow puzzle game, so I placed the binary gates only on milestone levels. That way the Alan Turing tribute appears clearly, but the main game still feels like an arcade platformer.&lt;/p&gt;

&lt;p&gt;Audio also had browser-specific challenges. Modern browsers block autoplay audio, so the music starts after the first player interaction. I also added a mute/unmute button so the player has control.&lt;/p&gt;

&lt;p&gt;Deployment had one final issue: Vercel initially showed a 404 because the actual game was inside &lt;code&gt;game-src/index.html&lt;/code&gt;, not the project root. I fixed this by adding a root &lt;code&gt;index.html&lt;/code&gt; that forwards to the game.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Category
&lt;/h2&gt;

&lt;p&gt;I am submitting for two prize categories:&lt;/p&gt;

&lt;h3&gt;
  
  
  Best Ode to Alan Turing
&lt;/h3&gt;

&lt;p&gt;Fruit Dash includes a Turing-inspired mechanic called &lt;strong&gt;Turing Gates&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;On milestone levels, the exit is locked behind a binary code puzzle. The game displays a 3-bit target code, and the player must shoot three binary switches until the switch values match the target.&lt;/p&gt;

&lt;p&gt;This is an arcade-style tribute to Alan Turing’s legacy in computation, logic, code-breaking, and the foundations of modern computer science. I wanted the tribute to exist inside the gameplay itself, not only in the submission description.&lt;/p&gt;

&lt;p&gt;The player solves a small binary logic problem, unlocks the gate, and continues the level.&lt;/p&gt;

&lt;h3&gt;
  
  
  Best Google AI Usage
&lt;/h3&gt;

&lt;p&gt;Google AI helped throughout the development process. I used Antigravity IDE for development ,also while building and iterating on the game. It helped with code generation, debugging, gameplay iteration, layout fixes, and improving the structure of the app.&lt;/p&gt;

&lt;p&gt;AI assistance was especially useful for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Debugging invisible platform issues&lt;/li&gt;
&lt;li&gt;Fixing sprite alignment problems&lt;/li&gt;
&lt;li&gt;Improving generated level placement&lt;/li&gt;
&lt;li&gt;Adding enemies and attacks&lt;/li&gt;
&lt;li&gt;Adding mobile controls&lt;/li&gt;
&lt;li&gt;Adding audio controls&lt;/li&gt;
&lt;li&gt;Optimizing the background music file&lt;/li&gt;
&lt;li&gt;Preparing the project for Vercel deployment&lt;/li&gt;
&lt;li&gt;Shaping the Turing Gate binary puzzle mechanic&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also used Gemini models / Gemini API workflows during the creative process for asset and image-related experimentation. The final game is still a browser-based JavaScript game using local assets, but Google AI helped speed up the design, development, debugging, and iteration process.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gamechallenge</category>
      <category>gamedev</category>
      <category>unity3d</category>
    </item>
    <item>
      <title>Finishing HELIX: Building an AI-Powered Space Operations Intelligence Platform with GitHub Copilot</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Fri, 05 Jun 2026 14:29:52 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/finishing-helix-building-an-ai-powered-space-operations-intelligence-platform-with-github-copilot-nj4</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/finishing-helix-building-an-ai-powered-space-operations-intelligence-platform-with-github-copilot-nj4</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-05-21"&gt;GitHub Finish-Up-A-Thon Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;This is my submission for the &lt;strong&gt;GitHub Finish-Up-A-Thon Challenge&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The idea behind this challenge really hit home for me: finally finish what you started.&lt;br&gt;
HELIX started as a satellite tracking and conjunction detection project. It already had a working backend, orbital propagation, a 3D globe, and basic AI summaries. But it still felt like a technical prototype.&lt;br&gt;
For this challenge, I brought it much closer to a finished product.&lt;br&gt;
I turned HELIX into an &lt;strong&gt;AI-powered space operations intelligence platform&lt;/strong&gt; that can investigate orbital risk, correlate multiple space data sources, and generate explainable operational assessments.&lt;br&gt;
GitHub Copilot helped me push the project from “cool prototype” to something that feels like a real mission operations console.&lt;/p&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;



&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/RlVllPlEW28"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Github Repository : &lt;br&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/kris70lesgo" rel="noopener noreferrer"&gt;
        kris70lesgo
      &lt;/a&gt; / &lt;a href="https://github.com/kris70lesgo/helix" rel="noopener noreferrer"&gt;
        helix
      &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;HELIX&lt;/h1&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Coral-Powered Space Operations Intelligence Platform&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;HELIX is an AI-powered Space Operations Intelligence Platform that transforms fragmented orbital, launch, and space weather data into actionable mission intelligence.&lt;/p&gt;
&lt;p&gt;Built on top of Coral's federated SQL runtime, HELIX enables operators, researchers, and analysts to investigate conjunction risks, correlate launch activity, monitor orbital congestion, and generate explainable operational assessments through multi-step AI investigations.&lt;/p&gt;
&lt;p&gt;Unlike traditional satellite trackers, HELIX focuses on answering:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What is happening in orbit?&lt;/p&gt;
&lt;p&gt;Why is it happening?&lt;/p&gt;
&lt;p&gt;What should operators pay attention to next?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why HELIX?&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Earth's orbit is becoming increasingly congested.&lt;/p&gt;
&lt;p&gt;Thousands of active satellites, frequent launches, and growing debris populations create a complex operational environment where understanding risk requires data from multiple disconnected systems.&lt;/p&gt;
&lt;p&gt;Most tools can visualize orbital activity.&lt;/p&gt;
&lt;p&gt;HELIX investigates it.&lt;/p&gt;
&lt;p&gt;Using Coral as a unified intelligence layer, HELIX correlates:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Satellite conjunction events&lt;/li&gt;
&lt;li&gt;Launch schedules and mission activity&lt;/li&gt;
&lt;li&gt;Space weather conditions&lt;/li&gt;
&lt;li&gt;Satellite metadata&lt;/li&gt;
&lt;li&gt;Historical orbital trends&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;…&lt;/p&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/kris70lesgo/helix" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  What HELIX Does
&lt;/h2&gt;

&lt;p&gt;HELIX is a local-first space situational awareness and mission intelligence platform.&lt;/p&gt;

&lt;p&gt;It helps answer questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why are conjunction risks elevated today?&lt;/li&gt;
&lt;li&gt;Which satellites repeatedly appear in high-risk events?&lt;/li&gt;
&lt;li&gt;Are upcoming launches contributing to orbital congestion?&lt;/li&gt;
&lt;li&gt;Is space weather affecting operational risk?&lt;/li&gt;
&lt;li&gt;What should an operator monitor next?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of only showing satellite positions, HELIX performs structured investigations over operational data.&lt;/p&gt;




&lt;h2&gt;
  
  
  Core Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  3D Satellite Monitoring
&lt;/h3&gt;

&lt;p&gt;HELIX includes a real-time globe interface for viewing satellites and conjunction events.&lt;/p&gt;

&lt;p&gt;The frontend uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next.js&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Three.js&lt;/li&gt;
&lt;li&gt;react-globe.gl&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The backend uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;FastAPI&lt;/li&gt;
&lt;li&gt;SQLite&lt;/li&gt;
&lt;li&gt;SGP4 orbital propagation&lt;/li&gt;
&lt;li&gt;KD-tree optimized conjunction detection&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;System Architecture:&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%2Fon9nnn9hp7lf8uwiybbb.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%2Fon9nnn9hp7lf8uwiybbb.png" alt=" " width="800" height="1200"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  Multi-Source Operational Intelligence
&lt;/h3&gt;

&lt;p&gt;HELIX connects multiple operational data sources:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local satellite and conjunction database&lt;/li&gt;
&lt;li&gt;NOAA space weather data&lt;/li&gt;
&lt;li&gt;Launch Library launch data&lt;/li&gt;
&lt;li&gt;Space-Track metadata&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These sources are exposed through Coral as SQL-queryable tables.&lt;/p&gt;

&lt;p&gt;That means HELIX can run cross-source intelligence queries like:&lt;/p&gt;

&lt;p&gt;conjunction risk + NOAA space weather&lt;br&gt;
launch activity + current solar conditions&lt;br&gt;
closest conjunctions + Space-Track object metadata&lt;br&gt;
Starlink launch activity + local conjunction pressure&lt;/p&gt;
&lt;h3&gt;
  
  
  Multi-Step AI Investigation Agent
&lt;/h3&gt;

&lt;p&gt;The biggest finish-up improvement was moving from:&lt;br&gt;
&lt;code&gt;prompt → query → summary&lt;/code&gt;&lt;br&gt;
to: &lt;br&gt;
&lt;code&gt;prompt → investigation plan → query chain → findings → assessment → recommendations&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The investigation engine is deterministic and safe.&lt;br&gt;
It does not generate arbitrary SQL.&lt;br&gt;
Instead, it chooses from approved Coral SQL templates and runs a bounded sequence of investigation steps.&lt;/p&gt;

&lt;p&gt;Example investigation:&lt;br&gt;
`User: Why are conjunction risks elevated today?&lt;/p&gt;

&lt;p&gt;[1] Querying conjunction risk distribution&lt;br&gt;
[2] Analyzing closest high-risk events&lt;br&gt;
[3] Detecting repeated satellite involvement&lt;br&gt;
[4] Comparing risk density by day&lt;br&gt;
[5] Checking upcoming launch activity&lt;br&gt;
[6] Checking NOAA space weather&lt;br&gt;
[7] Correlating findings&lt;br&gt;
[8] Generating operational recommendations`&lt;/p&gt;
&lt;h1&gt;
  
  
  Before and After
&lt;/h1&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%2F5yvu5fzkttaxnylkuk74.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%2F5yvu5fzkttaxnylkuk74.png" alt=" " width="799" height="475"&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%2F5v5atsftjq8abik1qgyd.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%2F5v5atsftjq8abik1qgyd.png" alt=" " width="800" height="485"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When I started, &lt;strong&gt;HELIX&lt;/strong&gt; was primarily a space visualization prototype.&lt;/p&gt;

&lt;p&gt;The first version could display satellites on a 3D globe and visualize orbital tracks, but the overall product was still incomplete. The core visualization layer worked, but most of the operational intelligence layer was missing. The &lt;strong&gt;Intel&lt;/strong&gt; experience and the &lt;strong&gt;Conjunctions&lt;/strong&gt; workflow existed mostly as ideas and partially implemented components rather than finished features.&lt;/p&gt;

&lt;p&gt;The early version included the basic foundation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Satellite globe visualization&lt;/li&gt;
&lt;li&gt;Object counts and statistics&lt;/li&gt;
&lt;li&gt;Basic live status information&lt;/li&gt;
&lt;li&gt;Planned Intel and Conjunctions navigation&lt;/li&gt;
&lt;li&gt;Early conjunction detection data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While the foundation was solid, it did not yet feel like a complete operations platform. Users could observe activity in orbit, but they could not effectively investigate, analyze, or act on that information.&lt;/p&gt;
&lt;h2&gt;
  
  
  The Final Version
&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%2Fbfngn895mmp5yp4w4s77.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%2Fbfngn895mmp5yp4w4s77.png" alt=" " width="799" height="509"&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%2Fuxaguo7k2xf38o36eev3.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%2Fuxaguo7k2xf38o36eev3.png" alt=" " width="800" height="509"&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%2Fpzw2kttth3i1a0vzsaxo.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%2Fpzw2kttth3i1a0vzsaxo.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The final version of HELIX is much closer to a real mission-control-style interface.&lt;/p&gt;

&lt;p&gt;It now includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A polished interactive satellite globe&lt;/li&gt;
&lt;li&gt;Live satellite detail drawer&lt;/li&gt;
&lt;li&gt;High-risk conjunction overlays&lt;/li&gt;
&lt;li&gt;Conjunction count indicators and alert banners&lt;/li&gt;
&lt;li&gt;Fully functional Intel console&lt;/li&gt;
&lt;li&gt;Working Conjunctions panel&lt;/li&gt;
&lt;li&gt;Operational investigation workflow&lt;/li&gt;
&lt;li&gt;Coral-backed cross-source intelligence analysis&lt;/li&gt;
&lt;li&gt;AI-generated operational recommendations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The current interface transforms the globe from a visualization component into an operational workspace.&lt;/p&gt;

&lt;p&gt;Instead of simply displaying satellites, HELIX now surfaces:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Active high-risk conjunction events&lt;/li&gt;
&lt;li&gt;Detailed satellite metadata&lt;/li&gt;
&lt;li&gt;Live position and velocity information&lt;/li&gt;
&lt;li&gt;Investigation context&lt;/li&gt;
&lt;li&gt;Operational intelligence insights&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The globe is no longer just showing data it is helping explain and investigate it.&lt;/p&gt;


&lt;h1&gt;
  
  
  How GitHub Copilot Helped
&lt;/h1&gt;

&lt;p&gt;GitHub Copilot played a major role in turning unfinished concepts into working product features.&lt;/p&gt;

&lt;p&gt;The most significant contributions were helping build the areas that previously existed only as plans:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Intel console&lt;/li&gt;
&lt;li&gt;The Conjunctions workflow&lt;/li&gt;
&lt;li&gt;Backend intelligence endpoints&lt;/li&gt;
&lt;li&gt;The multi-step investigation engine&lt;/li&gt;
&lt;li&gt;Coral SQL query chaining&lt;/li&gt;
&lt;li&gt;Frontend operational panels and UI states&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;More importantly, Copilot helped support the entire engineering workflow rather than simply generating isolated code snippets.&lt;/p&gt;

&lt;p&gt;The process looked like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Inspect the existing codebase&lt;/li&gt;
&lt;li&gt;Understand the backend and frontend architecture&lt;/li&gt;
&lt;li&gt;Identify where missing features should integrate&lt;/li&gt;
&lt;li&gt;Implement backend APIs&lt;/li&gt;
&lt;li&gt;Connect frontend interfaces&lt;/li&gt;
&lt;li&gt;Test the application&lt;/li&gt;
&lt;li&gt;Resolve integration and debugging issues&lt;/li&gt;
&lt;li&gt;Polish the final experience&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Copilot was especially valuable for bridging the gap between planned functionality and working functionality.&lt;/p&gt;

&lt;p&gt;Many parts of the interface already existed visually, but they were not fully connected to operational workflows. Copilot helped move the project from:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Button exists
→ Feature planned
→ Logic incomplete
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Button exists
→ Backend implemented
→ Frontend connected
→ Investigation workflow operational
→ Feature fully functional
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Outcome
&lt;/h2&gt;

&lt;p&gt;As a result, HELIX evolved from a satellite visualization prototype into a complete AI-powered space operations intelligence platform.&lt;/p&gt;

&lt;p&gt;It now supports:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Operational investigations&lt;/li&gt;
&lt;li&gt;Conjunction monitoring&lt;/li&gt;
&lt;li&gt;Cross-source intelligence analysis&lt;/li&gt;
&lt;li&gt;AI-assisted assessments&lt;/li&gt;
&lt;li&gt;Coral-backed data correlation&lt;/li&gt;
&lt;li&gt;Actionable operational recommendations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project did not require a complete rebuild.&lt;/p&gt;

&lt;p&gt;It required finishing the missing pieces, connecting existing systems together, and transforming concepts into working features.&lt;/p&gt;

&lt;p&gt;GitHub Copilot helped make that transition possible.&lt;/p&gt;

&lt;h1&gt;
  
  
  The Comeback Story of HELIX
&lt;/h1&gt;

&lt;p&gt;Before the Finish-Up-A-Thon, &lt;strong&gt;HELIX&lt;/strong&gt; was a project with a lot of potential but it was stuck in the place where many ambitious side projects end up.&lt;/p&gt;

&lt;p&gt;The foundation was already there.&lt;/p&gt;

&lt;p&gt;It had a FastAPI backend, satellite data ingestion, orbital propagation, conjunction detection, a SQLite database, and a 3D globe interface. It could track satellites, visualize orbital activity, and identify close approaches between objects in space.&lt;/p&gt;

&lt;p&gt;Technically, it worked.&lt;/p&gt;

&lt;p&gt;But it didn't feel finished.&lt;/p&gt;

&lt;p&gt;HELIX could tell users &lt;strong&gt;what&lt;/strong&gt; was happening, but it struggled to explain &lt;strong&gt;why&lt;/strong&gt; it was happening. The AI layer was limited to basic summaries, many features felt disconnected, and the overall experience resembled a collection of powerful components rather than a unified intelligence platform.&lt;/p&gt;

&lt;p&gt;In short, HELIX felt more like a satellite-tracking prototype than a true mission operations system.&lt;/p&gt;

&lt;p&gt;That was the state of the project when I began the finish-up process.&lt;/p&gt;

&lt;h2&gt;
  
  
  Enter GitHub Copilot
&lt;/h2&gt;

&lt;p&gt;Instead of starting over, I focused on understanding what already existed.&lt;/p&gt;

&lt;p&gt;Using GitHub Copilot and advanced GPT-5.5 style assistance, I began by inspecting the codebase, mapping the architecture, and identifying the areas that would create the biggest impact if improved.&lt;/p&gt;

&lt;p&gt;The process became highly iterative:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Understand the existing system&lt;/li&gt;
&lt;li&gt;Identify weak points&lt;/li&gt;
&lt;li&gt;Plan improvements&lt;/li&gt;
&lt;li&gt;Implement safely&lt;/li&gt;
&lt;li&gt;Test thoroughly&lt;/li&gt;
&lt;li&gt;Repeat&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Rather than rewriting everything, I concentrated on strengthening what was already there.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bringing HELIX Back to Life
&lt;/h2&gt;

&lt;p&gt;The first step was cleaning up and stabilizing the architecture while preserving the satellite tracking and conjunction detection capabilities that already worked.&lt;/p&gt;

&lt;p&gt;From there, I introduced &lt;strong&gt;Coral&lt;/strong&gt; as the data orchestration layer and connected multiple operational datasets into a unified queryable system.&lt;/p&gt;

&lt;p&gt;Suddenly, HELIX was no longer looking at isolated pieces of information.&lt;/p&gt;

&lt;p&gt;It could correlate data across:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Conjunction events&lt;/li&gt;
&lt;li&gt;Satellite metadata&lt;/li&gt;
&lt;li&gt;Launch activity&lt;/li&gt;
&lt;li&gt;NOAA space weather&lt;/li&gt;
&lt;li&gt;Space-Track datasets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project started evolving from a visualization tool into an intelligence platform.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Biggest Transformation
&lt;/h2&gt;

&lt;p&gt;The most significant change was the intelligence workflow itself.&lt;/p&gt;

&lt;p&gt;Before, the AI interaction looked something like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Ask a question
→ Run a query
→ Summarize the results
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It worked, but it was shallow.&lt;/p&gt;

&lt;p&gt;The system answered questions without actually investigating them.&lt;/p&gt;

&lt;p&gt;I wanted HELIX to think more like an analyst.&lt;/p&gt;

&lt;p&gt;So I built a deterministic investigation engine that transformed the workflow into:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Ask a question
→ Build an investigation plan
→ Execute approved Coral queries
→ Correlate findings
→ Generate an assessment
→ Recommend next actions
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With the help of Copilot, I implemented:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Multi-step investigation workflows&lt;/li&gt;
&lt;li&gt;Query tracing and transparency&lt;/li&gt;
&lt;li&gt;Passive monitoring alerts&lt;/li&gt;
&lt;li&gt;Operational recommendations&lt;/li&gt;
&lt;li&gt;Investigation timelines in the UI&lt;/li&gt;
&lt;li&gt;Backend intelligence endpoints&lt;/li&gt;
&lt;li&gt;Frontend investigation experiences&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The system stopped behaving like a chatbot and started behaving like an operations analyst.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Different Kind of Answer
&lt;/h2&gt;

&lt;p&gt;Consider a question like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Why are conjunction risks elevated today?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Previously, HELIX would have returned a simple summary of conjunction data.&lt;/p&gt;

&lt;p&gt;Now it performs a full investigation.&lt;/p&gt;

&lt;p&gt;It can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Analyze conjunction density&lt;/li&gt;
&lt;li&gt;Identify repeatedly involved satellites&lt;/li&gt;
&lt;li&gt;Check recent launch activity&lt;/li&gt;
&lt;li&gt;Review NOAA space weather conditions&lt;/li&gt;
&lt;li&gt;Compare current activity with historical patterns&lt;/li&gt;
&lt;li&gt;Correlate findings across multiple datasets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Only then does it generate an assessment and suggest possible operational actions.&lt;/p&gt;

&lt;p&gt;That fundamentally changed how the platform feels.&lt;/p&gt;

&lt;h2&gt;
  
  
  From Prototype to Platform
&lt;/h2&gt;

&lt;p&gt;The transformation wasn't about adding flashy features.&lt;/p&gt;

&lt;p&gt;It was about connecting everything together.&lt;/p&gt;

&lt;p&gt;GitHub Copilot helped accelerate the parts that often cause projects to stall:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understanding a large codebase&lt;/li&gt;
&lt;li&gt;Architecture planning&lt;/li&gt;
&lt;li&gt;Safe refactoring&lt;/li&gt;
&lt;li&gt;Backend development&lt;/li&gt;
&lt;li&gt;Frontend improvements&lt;/li&gt;
&lt;li&gt;SQL generation&lt;/li&gt;
&lt;li&gt;API debugging&lt;/li&gt;
&lt;li&gt;Documentation&lt;/li&gt;
&lt;li&gt;Final validation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Feature by feature, HELIX became more cohesive, more intelligent, and more useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where HELIX Stands Today
&lt;/h2&gt;

&lt;p&gt;Before the Finish-Up-A-Thon, HELIX was a promising demonstration of satellite tracking technology.&lt;/p&gt;

&lt;p&gt;Today, it feels like a genuine AI-powered space operations console.&lt;/p&gt;

&lt;p&gt;It can investigate, correlate, explain, and recommend not just visualize.&lt;/p&gt;

&lt;p&gt;The project didn't need a complete rewrite.&lt;/p&gt;

&lt;p&gt;It needed someone to finish what had already been started.&lt;/p&gt;

&lt;p&gt;GitHub Copilot helped make that possible.&lt;/p&gt;

&lt;p&gt;And in many ways, HELIX's biggest achievement wasn't the technology itself—it was finally crossing the line from &lt;strong&gt;almost finished&lt;/strong&gt; to &lt;strong&gt;fully realized&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Experience with GitHub Copilot
&lt;/h2&gt;

&lt;h2&gt;
  
  
  How GitHub Copilot Helped
&lt;/h2&gt;

&lt;p&gt;I used GitHub Copilot heavily throughout the finish-up process, specifically with advanced ChatGPT/GPT-5.5 style coding assistance.&lt;/p&gt;

&lt;p&gt;Copilot helped with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reading and understanding the existing codebase&lt;/li&gt;
&lt;li&gt;planning the architecture&lt;/li&gt;
&lt;li&gt;refactoring the project safely&lt;/li&gt;
&lt;li&gt;adding the investigation engine&lt;/li&gt;
&lt;li&gt;creating backend endpoints&lt;/li&gt;
&lt;li&gt;improving the frontend UI&lt;/li&gt;
&lt;li&gt;generating SQL query templates&lt;/li&gt;
&lt;li&gt;debugging API issues&lt;/li&gt;
&lt;li&gt;writing documentation&lt;/li&gt;
&lt;li&gt;validating the final build&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most valuable part was not just code generation. It was the ability to work iteratively:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;inspect the existing project&lt;/li&gt;
&lt;li&gt;identify weak points&lt;/li&gt;
&lt;li&gt;plan the next phase&lt;/li&gt;
&lt;li&gt;implement safely&lt;/li&gt;
&lt;li&gt;test&lt;/li&gt;
&lt;li&gt;repeat&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That workflow made it possible to finish a project that otherwise could have stayed half-done.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
    </item>
    <item>
      <title>one of the best blogs about hermes agent</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Sun, 31 May 2026 05:33:20 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/one-of-the-best-blogs-about-hermes-agent-3c22</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/one-of-the-best-blogs-about-hermes-agent-3c22</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg" class="crayons-story__hidden-navigation-link"&gt;Nous Research Hermes Agent: Setup and Tutorial Guide&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
      &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg" class="crayons-article__context-note crayons-article__context-note__feed"&gt;&lt;p&gt;Hermes Agent Challenge Submission: Write About Hermes Agent&lt;/p&gt;

&lt;/a&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/paimon_573760ccaa1b3492b4" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F3471220%2Fa188e842-2518-463a-b0a7-b65214425aaf.png" alt="paimon_573760ccaa1b3492b4 profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/paimon_573760ccaa1b3492b4" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Paimon
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Paimon
                
                
              
              &lt;div id="story-author-preview-content-3787287" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/paimon_573760ccaa1b3492b4" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F3471220%2Fa188e842-2518-463a-b0a7-b65214425aaf.png" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Paimon&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;May 31&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg" id="article-link-3787287"&gt;
          Nous Research Hermes Agent: Setup and Tutorial Guide
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hermesagentchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hermesagentchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/devchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;devchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/agents"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;agents&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;14&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/nous-research-hermes-agent-setup-and-tutorial-guide-2glg#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              2&lt;span class="hidden s:inline"&gt;&amp;nbsp;comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            10 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>agents</category>
      <category>ai</category>
      <category>llm</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Credexia: AI-Powered Loan Compliance Built with Google Gemini</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Wed, 04 Mar 2026 04:05:01 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/credexia-ai-powered-loan-compliance-built-with-google-gemini-5a4c</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/credexia-ai-powered-loan-compliance-built-with-google-gemini-5a4c</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/mlh-built-with-google-gemini-02-25-26"&gt;Built with Google Gemini: Writing Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Building Credexia: How Gemini Became My 48-Hour Co-Founder
&lt;/h1&gt;

&lt;h2&gt;
  
  
  The Event
&lt;/h2&gt;

&lt;p&gt;I built Credexia at the LMA Edge Hackathon, where the theme was loan market innovation. The challenge was to modernize how banks handle loan servicing after the trade is signed. While trading platforms have gone digital, post-closing operations are still stuck in Excel hell. I had 48 hours to change that.&lt;/p&gt;

&lt;p&gt;The LMA ecosystem has tools for drafting loans and platforms for price discovery, but there is a massive white space in between. Banks can agree on trades and sign loans digitally, yet post-closing servicing and settlement remain fragmented. Excel sheets, endless email chains, manual data re-entry, broken reconciliation. Liquidity is not blocked by lack of capital. It is blocked by operational friction.&lt;/p&gt;

&lt;p&gt;My goal was to build the Operating System for Loans. A unified platform connecting covenant monitoring, trade settlement, and cash distribution in real time.&lt;/p&gt;

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

&lt;p&gt;Credexia is a unified desktop platform covering three critical loan lifecycle stages in one dashboard. It is built on Next.js 16 with React 19, TypeScript 5.8, and styled with Tailwind CSS 4, MUI 7, and Framer Motion for animations.&lt;/p&gt;

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

&lt;p&gt;See Credexia in action:&lt;br&gt;


  &lt;iframe src="https://www.youtube.com/embed/3GrR22gW9SU"&gt;
  &lt;/iframe&gt;


&lt;br&gt;
&lt;a href="https://youtu.be/3GrR22gW9SU?si=aFDLldcB2vOJYxK8" rel="noopener noreferrer"&gt;https://youtu.be/3GrR22gW9SU?si=aFDLldcB2vOJYxK8&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Live Website
&lt;/h2&gt;

&lt;p&gt;Try the platform:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://credexia.vercel.app/" rel="noopener noreferrer"&gt;https://credexia.vercel.app/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  GitHub Repository
&lt;/h2&gt;

&lt;p&gt;View the code:&lt;br&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/kris70lesgo" rel="noopener noreferrer"&gt;
        kris70lesgo
      &lt;/a&gt; / &lt;a href="https://github.com/kris70lesgo/Credexia" rel="noopener noreferrer"&gt;
        Credexia
      &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;Credexia&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;A Next.js + Supabase + Ethers-powered platform for blockchain-verified loan covenant monitoring, OCR-driven data extraction, and portfolio analytics.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;AI-assisted chat for covenant guidance (Gemini)&lt;/li&gt;
&lt;li&gt;OCR-backed document intake with fallback parsing&lt;/li&gt;
&lt;li&gt;Covenant calculations (Debt/EBITDA, ICR, current ratio)&lt;/li&gt;
&lt;li&gt;Polygon Amoy sealing for compliance events&lt;/li&gt;
&lt;li&gt;Dashboard for loans, uploads, reports, and trade utilities&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Stack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Next.js 16, TypeScript, Tailwind&lt;/li&gt;
&lt;li&gt;Supabase (auth, DB, storage)&lt;/li&gt;
&lt;li&gt;Ethers.js for Polygon interactions&lt;/li&gt;
&lt;li&gt;Google Gemini for AI responses and parsing&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Prerequisites&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Node 18+ and npm&lt;/li&gt;
&lt;li&gt;Supabase project with SUPABASE_URL and service key&lt;/li&gt;
&lt;li&gt;Polygon Amoy RPC endpoint and funded deployer key&lt;/li&gt;
&lt;li&gt;Gemini API key for AI features&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Setup&lt;/h2&gt;

&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;Install deps: npm install&lt;/li&gt;
&lt;li&gt;Copy .env.local.example to .env.local (if present) and set:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;SUPABASE_URL=
SUPABASE_SERVICE_ROLE_KEY=
SUPABASE_ANON_KEY=
GEMINI_API_KEY=
POLYGON_RPC_URL=
BLOCKCHAIN_PRIVATE_KEY=
API_KEY=                  # optional API auth
ALLOWED_ORIGINS=*         # comma-separated list in prod
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Run dev server: npm run dev&lt;/li&gt;
&lt;li&gt;Optional: compile contracts: npx hardhat compile&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Scripts&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;npm run dev – start Next.js dev server&lt;/li&gt;
&lt;li&gt;npm…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/kris70lesgo/Credexia" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;




&lt;h3&gt;
  
  
  Monitoring
&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%2Fm7ry2y8if4crszyhnijh.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%2Fm7ry2y8if4crszyhnijh.png" alt=" "&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%2Fg1an2dghdfekhnd4spdk.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%2Fg1an2dghdfekhnd4spdk.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tracks financial covenants like Debt/EBITDA and ESG covenants like Carbon Emissions. Users upload a PDF financial report. AI extracts values and calculates compliance. A traffic light system shows status: Green for Safe, Amber for Warning, Red for Breach. If an ESG covenant is breached, the interest rate automatically adjusts according to loan terms.&lt;/p&gt;

&lt;h3&gt;
  
  
  TradeClear
&lt;/h3&gt;

&lt;p&gt;Digitizes the transfer of loan ownership. Users upload a Notice of Assignment PDF. AI extracts Seller, Buyer, and Trade Amount. After approval, the Ownership Register updates instantly. This removes manual ledger updates entirely.&lt;/p&gt;

&lt;h3&gt;
  
  
  AgentFlow
&lt;/h3&gt;

&lt;p&gt;Automates the Payment Waterfall. It distributes borrower payments across lender banks, enforces zero rounding error, assigns any remainder to the Agent Bank, and generates SWIFT-ready CSV in seconds.&lt;/p&gt;

&lt;h3&gt;
  
  
  Global State
&lt;/h3&gt;

&lt;p&gt;All three modules share a Global State. If ownership changes in TradeClear, AgentFlow instantly reflects the new owner without a page reload. This is managed through an in-memory global singleton with hot-reload safety, though this would need Redis or a database for true production multi-instance deployment.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Gemini Powered Everything
&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%2F7fbekc57nvfbkahxpvte.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%2F7fbekc57nvfbkahxpvte.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I used Gemini at every layer of the stack. Not as a helper. As a co-builder. The AI layer centers on Google Gemini 2.5 Flash with a 4-tier fallback system: Gemini 2.5 Flash, Gemini 2.5 Pro, Gemini 1.5 Flash, and Gemini 1.5 Pro. OCR.space serves as a raw text backup when needed. A confidence gate at 60% ensures that if AI confidence drops below this threshold, the user must confirm before proceeding.&lt;/p&gt;

&lt;h3&gt;
  
  
  Document Understanding
&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%2Fb2lugse2bniijz8ejz43.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%2Fb2lugse2bniijz8ejz43.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The core feature is PDF ingestion. A credit analyst uploads Q4 financials. Gemini extracts the numbers, calculates ratios, and flags breaches. The extraction targets totalDebt and ebitda fields with confidence scoring. When confidence is low or parsing fails, an OCR fallback path activates.&lt;/p&gt;

&lt;p&gt;The first extraction test I ran returned a Debt/EBITDA ratio of 47x. The real number was 4.7x. Gemini had misread a table cell. That single failure taught me why finance demands confidence gates and deterministic logic. I rebuilt the extraction layer with strict validation and the 60% confidence threshold.&lt;/p&gt;

&lt;h3&gt;
  
  
  Code Generation
&lt;/h3&gt;

&lt;p&gt;I wrote maybe 40% of the React components myself. The rest came from Gemini prompts. The traffic light dashboard, the upload flow, the audit log interface. I would describe what I needed, iterate twice, and have production-ready code. The marketing landing page with animated hero, the login authentication flow, the portfolio dashboard with analytics cards, the loan tables, the document intake with OCR processing, the compliance reporting, the trade workflow UI, and the AI agent orchestration view all benefited from Gemini-generated code.&lt;/p&gt;

&lt;h3&gt;
  
  
  Blockchain Integration
&lt;/h3&gt;

&lt;p&gt;I used Gemini to write the Solidity contracts for Polygon Amoy testnet. The CovenantRegistry.sol contract handles SHA-256 covenant sealing. Each compliance event gets a txHash for immutable audit trails. When I hit the "private key fiasco" at 3 AM, where my .env key had an extra character, Ethereum keys must be exactly 64 hex characters, Gemini debugged the error message with me. I also implemented a demo mode using FNV-1a hash simulation when the network fails, ensuring the demo never crashes regardless of API failure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Trade Clearing Architecture
&lt;/h3&gt;

&lt;p&gt;The trade module has 7 sub-routes forming a complete lifecycle: upload, parse, validate, owners, approve, confirm, and events. This supports partial ownership transfers between banks. The in-memory trade state singleton prevents loss during Next.js hot reload, though production would need a persistent store.&lt;/p&gt;

&lt;h3&gt;
  
  
  Payment Waterfall Precision
&lt;/h3&gt;

&lt;p&gt;The waterfall distributes cash to syndicate members by ownership share. Floating-point remainder always assigns to Agent Bank to ensure exact totals. This handles fractional splits and guarantees perfect totals, solving the zero-variance requirement that took six hours to perfect. Not because the math is hard. Because financial systems demand perfection.&lt;/p&gt;

&lt;h3&gt;
  
  
  AI Chat Assistant
&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%2Fbg5qm5uvor8hpjvyzx2p.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%2Fbg5qm5uvor8hpjvyzx2p.png" alt=" "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I built a covenant guidance chatbot powered by Gemini. It answers questions about loan covenants, risk analysis, debt-to-EBITDA calculations, document uploads, OCR extraction, blockchain verification, and portfolio insights.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Pitch Deck
&lt;/h3&gt;

&lt;p&gt;Yes, I even used Nano Banana, Gemini's image generation, for the pitch deck visuals. The LMA judges saw AI-generated diagrams explaining AI-powered compliance. Meta, but effective. Gemini helped structure the narrative and create visuals that made institutional infrastructure feel tangible.&lt;br&gt;


&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://docs.google.com/presentation/d/14Yo6o3cjmI9mG06GeovLxeXFwecfI5bO/edit?usp=sharing&amp;amp;amp%3Bouid=115740250615114808651&amp;amp;amp%3Brtpof=true&amp;amp;amp%3Bsd=true" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Flh7-us.googleusercontent.com%2Fdocs%2FAHkbwyJgFgqqkc-8_dklbzyKj0_EhgBLhSLXfG1HGYE-tYSM01Ru-hWP3sL19CVW4wySg26k82sXBWT3-h_3bGaNWyHUkWQ6Aca3Zh3F%3Dw1200-h630-p" height="auto" class="m-0"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://docs.google.com/presentation/d/14Yo6o3cjmI9mG06GeovLxeXFwecfI5bO/edit?usp=sharing&amp;amp;amp%3Bouid=115740250615114808651&amp;amp;amp%3Brtpof=true&amp;amp;amp%3Bsd=true" rel="noopener noreferrer" class="c-link"&gt;
            Credexia_ Reinventing Trust, Transparency, and Automation in Loan Markets.pptx - Google Slides
          &lt;/a&gt;
        &lt;/h2&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fssl.gstatic.com%2Fdocs%2Fpresentations%2Fimages%2Ffavicon-2023q4.ico"&gt;
          docs.google.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;




&lt;h2&gt;
  
  
  Technical Architecture
&lt;/h2&gt;

&lt;p&gt;The frontend runs on Next.js 16 App Router with 18 API routes covering loans, chat, OCR, parsing, extraction, covenant calculations, blockchain sealing, compliance events, portfolio data, uploads, waterfalls, and the full trade lifecycle.&lt;/p&gt;

&lt;p&gt;All business logic is implemented as pure functions with deterministic outputs. The covenant engine in particular has no side effects, calculating Debt/EBITDA ratios, Interest Coverage Ratios, and Current Ratios with strict mathematical precision.&lt;/p&gt;

&lt;p&gt;Database and authentication use Supabase with Postgres and Storage. The blockchain layer uses Ethers.js 6 with Hardhat 3 for smart contract development. Smart contracts are written in Solidity and deployed to Polygon Amoy testnet.&lt;/p&gt;

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

&lt;h3&gt;
  
  
  AI Needs Guardrails
&lt;/h3&gt;

&lt;p&gt;My first extraction failure taught me that finance cannot tolerate hallucination. The 47x versus 4.7x error led to the confidence gate system and deterministic validation layers. Every AI output gets verified before it touches a financial calculation.&lt;/p&gt;

&lt;h3&gt;
  
  
  Model Names Are Chaos
&lt;/h3&gt;

&lt;p&gt;I spent two hours debugging 404 errors before realizing "gemini-2.5-flash" and "gemini-2.5-flash-preview" are different endpoints. The 4-tier fallback system was born from necessity, not planning. Incorrect model names caused API failures that required the retry logic I implemented.&lt;/p&gt;

&lt;h3&gt;
  
  
  Simulation Beats Broken Reality
&lt;/h3&gt;

&lt;p&gt;OCR on messy financial tables failed constantly. Rather than fight it, I built demo-friendly PDFs with clean formatting and a manual override. The demo worked. The architecture was real. Resilient architecture means the app never crashes during demo regardless of API failure.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Last Mile Is Process, Not Math
&lt;/h3&gt;

&lt;p&gt;Getting the payment waterfall to sum to exactly 100% with no rounding errors took six hours. Not because the math is hard. Because financial systems require perfection. The operational friction in fintech is not about complex calculations. It is about ensuring those calculations are auditable, deterministic, and zero-error.&lt;/p&gt;

&lt;h3&gt;
  
  
  Schema Drift Happens Fast
&lt;/h3&gt;

&lt;p&gt;Frontend expected fields that did not exist in Supabase. I adapted the frontend to the database rather than migrating the database mid-hackathon. This pragmatic approach preserved velocity when time was critical.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Worked and What Didn't
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What Worked
&lt;/h3&gt;

&lt;p&gt;Speed. I prototyped a full-stack fintech platform in 48 hours because Gemini accelerated every decision. Multi-modal document understanding. The ability to throw a PDF at an API and get structured JSON back feels like magic when it works. The traffic light UI gave instant risk visibility across the portfolio. Honest error handling meant no silent failures. Users see real confidence and validation errors.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Friction
&lt;/h3&gt;

&lt;p&gt;Inconsistency. Same prompt, different results across model versions. Structured output sometimes ignored my schema. Financial tables in PDFs remain a hard problem. I needed OCR.space as a backup for messy scans. The messy financial tables broke OCR repeatedly, requiring the demo-friendly PDF approach.&lt;/p&gt;

&lt;h3&gt;
  
  
  What I Needed
&lt;/h3&gt;

&lt;p&gt;Better documentation on model capabilities. Clearer error messages when context windows overflow. Native support for financial table extraction without custom preprocessing. More predictable structured output formatting for financial data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who This Is For
&lt;/h2&gt;

&lt;p&gt;Credexia serves Credit Risk Analysts, Loan Agency Teams, Syndicated Loan Traders, Treasury Operations, ESG Compliance Teams, and Audit &amp;amp; Regulatory Teams. Eventually it will serve rating agencies, regulators, and institutional investors. This is not consumer SaaS. This is institutional infrastructure.&lt;/p&gt;

&lt;h2&gt;
  
  
  Business Model
&lt;/h2&gt;

&lt;p&gt;Monetization can happen through per-loan subscription, per-document processing fees, per-settlement fees, compliance enterprise licenses, ESG pricing modules, and audit trail services.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;Credexia is not a hackathon toy. It is institutional infrastructure. I am adding real-time ESG covenant monitoring, expanding to trade settlement workflows, and building out the audit trail for regulatory compliance.&lt;/p&gt;

&lt;p&gt;Gemini got me from idea to working demo in 48 hours. The next 48 days are about making it production-grade. The architecture is real. The global state works. The blockchain sealing provides immutable audit trails. The payment waterfall guarantees zero variance. The AI extraction learns from every validation.&lt;/p&gt;

&lt;p&gt;The foundation is built. Now it is time to scale.&lt;/p&gt;




&lt;p&gt;Built with Next.js, Supabase, Polygon, and Google Gemini.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>geminireflections</category>
      <category>gemini</category>
    </item>
    <item>
      <title>Bridgy: Helping Overwhelmed Communities Choose the Right Tool, Not Another Tool</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Mon, 02 Mar 2026 04:32:18 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/bridgy-helping-overwhelmed-communities-choose-the-right-tool-not-another-tool-1p5p</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/bridgy-helping-overwhelmed-communities-choose-the-right-tool-not-another-tool-1p5p</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/weekend-2026-02-28"&gt;DEV Weekend Challenge: Community&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The Community
&lt;/h2&gt;

&lt;p&gt;A few months ago, a friend reached out to him late at night.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Do you know any tool that can actually help with this? I’ve been searching for an hour and now I’m more overwhelmed than when I started.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The friend was a college student. Smart, capable, constantly juggling assignments, exams, and expectations.&lt;br&gt;&lt;br&gt;
He also had ADHD.&lt;/p&gt;

&lt;p&gt;The problem wasn’t a lack of tools it was the opposite.&lt;/p&gt;

&lt;p&gt;Productivity apps. ADHD planners. Focus tools. Study systems. Recommendation threads. Endless “best apps” lists.&lt;/p&gt;

&lt;p&gt;Each search added another decision.&lt;br&gt;&lt;br&gt;
Each decision increased the cognitive load.&lt;/p&gt;

&lt;p&gt;By the time the search ended, nothing had been chosen and the overwhelm had only grown.&lt;/p&gt;

&lt;p&gt;The person reading that message understood immediately.&lt;/p&gt;

&lt;p&gt;He is part of the same overlapping communities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a &lt;strong&gt;college student&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;a &lt;strong&gt;developer&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;someone living with &lt;strong&gt;ADHD&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In these communities, the hardest part is often not execution it’s &lt;strong&gt;starting&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
And starting means choosing. Choosing means evaluating options. And evaluating options is exhausting when your brain is already overloaded.&lt;/p&gt;

&lt;p&gt;What actually helped wasn’t finding &lt;em&gt;another&lt;/em&gt; tool.&lt;/p&gt;

&lt;p&gt;What helped was when someone narrowed the field and said:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Based on what you’re dealing with &lt;em&gt;right now&lt;/em&gt;, start here.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Bridgy is built for that moment.&lt;/p&gt;


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

&lt;p&gt;&lt;strong&gt;Bridgy&lt;/strong&gt; is a transparent, rule based resource matching web app designed to reduce decision paralysis not add to it.&lt;/p&gt;

&lt;p&gt;Instead of asking users to browse endlessly, Bridgy:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Accepts &lt;strong&gt;natural language input&lt;/strong&gt; or a &lt;strong&gt;simple 3 question guided flow&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Interprets context (community, problem, urgency)&lt;/li&gt;
&lt;li&gt;Matches users to &lt;strong&gt;2–3 curated resources&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Explains &lt;em&gt;why&lt;/em&gt; each resource was selected&lt;/li&gt;
&lt;li&gt;Suggests &lt;strong&gt;one concrete next action&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;no black-box recommendations
&lt;/li&gt;
&lt;li&gt;no scraping
&lt;/li&gt;
&lt;li&gt;no tracking
&lt;/li&gt;
&lt;li&gt;no stored personal data
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every recommendation is &lt;strong&gt;deterministic and explainable&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;AI is used only to understand language and rewrite explanations empathetically never to decide what resources are shown.&lt;/p&gt;


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

&lt;p&gt;&lt;strong&gt;Video Demo&lt;/strong&gt;&lt;br&gt;&lt;br&gt;


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


&lt;/p&gt;




&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GitHub Repository&lt;/strong&gt;&lt;br&gt;&lt;br&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/kris70lesgo" rel="noopener noreferrer"&gt;
        kris70lesgo
      &lt;/a&gt; / &lt;a href="https://github.com/kris70lesgo/bridgy" rel="noopener noreferrer"&gt;
        bridgy
      &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;Bridgy&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Transparent, rule-based resource matching for neurodivergent minds.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Bridgy helps people with ADHD, autism, dyslexia, anxiety, depression, and related conditions find the right tools and support — without black-box algorithms, data collection, or tracking. Every recommendation is deterministic and explainable.&lt;/p&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Table of Contents&lt;/h2&gt;
&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#overview" rel="noopener noreferrer"&gt;Overview&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#features" rel="noopener noreferrer"&gt;Features&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#tech-stack" rel="noopener noreferrer"&gt;Tech Stack&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#project-structure" rel="noopener noreferrer"&gt;Project Structure&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#how-it-works" rel="noopener noreferrer"&gt;How It Works&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#getting-started" rel="noopener noreferrer"&gt;Getting Started&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#environment-variables" rel="noopener noreferrer"&gt;Environment Variables&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#pages--routes" rel="noopener noreferrer"&gt;Pages &amp;amp; Routes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#data-model" rel="noopener noreferrer"&gt;Data Model&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#scoring-engine" rel="noopener noreferrer"&gt;Scoring Engine&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#ai-integration" rel="noopener noreferrer"&gt;AI Integration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#design-system" rel="noopener noreferrer"&gt;Design System&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/kris70lesgo/bridgy#scripts" rel="noopener noreferrer"&gt;Scripts&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Overview&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;Bridgy is a &lt;strong&gt;static-first&lt;/strong&gt;, &lt;strong&gt;privacy-first&lt;/strong&gt; web app. Users describe what they need — either by answering a short guided questionnaire or typing freely — and Bridgy matches them to a curated set of 32+ resources using a fully transparent, deterministic scoring engine.&lt;/p&gt;

&lt;p&gt;There is no backend database, no user accounts, no analytics, and no data sent to third parties beyond an optional LLM call to parse free-text input. The entire matching logic lives in client-side code that anyone can read.&lt;/p&gt;…&lt;/div&gt;


&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/kris70lesgo/bridgy" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
The full codebase is open and readable.&lt;br&gt;&lt;br&gt;&lt;br&gt;
All matching logic, scoring rules, and data models live in the repository.&lt;/p&gt;




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

&lt;h3&gt;
  
  
  Architecture Philosophy
&lt;/h3&gt;

&lt;p&gt;Bridgy is intentionally:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Static-first&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Privacy-first&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Explainable by design&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;no backend database&lt;/li&gt;
&lt;li&gt;no user accounts&lt;/li&gt;
&lt;li&gt;no analytics&lt;/li&gt;
&lt;li&gt;no stored user data&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The app works fully even without an API key.&lt;/p&gt;




&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Framework&lt;/td&gt;
&lt;td&gt;Next.js 16 (App Router)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Language&lt;/td&gt;
&lt;td&gt;TypeScript (strict)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;UI&lt;/td&gt;
&lt;td&gt;React 19&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Styling&lt;/td&gt;
&lt;td&gt;Tailwind CSS v4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Icons&lt;/td&gt;
&lt;td&gt;Lucide React&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LLM Gateway&lt;/td&gt;
&lt;td&gt;OpenRouter (GLM-4.5 → Gemini 2.0 Flash fallback)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Deployment&lt;/td&gt;
&lt;td&gt;Vercel&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h3&gt;
  
  
  How Bridgy Works
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;User Input&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Guided mode (community → problem → urgency)
&lt;/li&gt;
&lt;li&gt;OR free-text natural language&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Intent Parsing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free text is parsed into structured intent using GLM-4.5
&lt;/li&gt;
&lt;li&gt;Falls back to Gemini 2.0 Flash
&lt;/li&gt;
&lt;li&gt;If no API key exists, a keyword-based local parser runs instead&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Deterministic Scoring&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Community match: +3
&lt;/li&gt;
&lt;li&gt;Problem match: +3
&lt;/li&gt;
&lt;li&gt;Urgency match: +1
&lt;/li&gt;
&lt;li&gt;Human support (when requested): +2
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Same input always produces the same ranked output.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Transparent Results&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;2–3 matched resources&lt;/li&gt;
&lt;li&gt;“Why this?” explanations&lt;/li&gt;
&lt;li&gt;One clear next action&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;h3&gt;
  
  
  Why These Decisions Matter
&lt;/h3&gt;

&lt;p&gt;Bridgy deliberately avoids:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;web scraping&lt;/li&gt;
&lt;li&gt;live search&lt;/li&gt;
&lt;li&gt;user tracking&lt;/li&gt;
&lt;li&gt;black-box AI recommendations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For people who are already overwhelmed, &lt;strong&gt;trust and clarity matter more than clever automation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Every design decision was made to reduce cognitive load not increase it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Closing
&lt;/h2&gt;

&lt;p&gt;Technology has done a great job building tools &lt;em&gt;for&lt;/em&gt; communities.&lt;/p&gt;

&lt;p&gt;It has done a much worse job helping people &lt;strong&gt;navigate between them&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Bridgy is a small attempt to bridge that gap not by adding more options, but by helping someone take &lt;strong&gt;one clear step forward&lt;/strong&gt; when everything feels like too much.&lt;/p&gt;

&lt;p&gt;Sometimes, that’s enough to change the direction of a day.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Copilot Sherlock : Governed Incident Investigation CLI</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Sun, 15 Feb 2026 16:14:19 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/copilot-sherlock-governed-incident-investigation-cli-59mn</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/copilot-sherlock-governed-incident-investigation-cli-59mn</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/github-2026-01-21"&gt;GitHub Copilot CLI Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Copilot Sherlock — Governed Incident Investigation CLI
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;AI proposes. Humans decide. The system verifies.&lt;/strong&gt;&lt;/p&gt;




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

&lt;p&gt;I built &lt;strong&gt;Sherlock&lt;/strong&gt;, a CLI-based incident investigation system that demonstrates how to use &lt;strong&gt;GitHub Copilot CLI inside a real production-style workflow&lt;/strong&gt;, not just as a code generator or chat assistant.&lt;/p&gt;

&lt;p&gt;Sherlock turns &lt;strong&gt;raw production evidence&lt;/strong&gt; (logs, metrics, deployments) into a &lt;strong&gt;governed, auditable incident decision&lt;/strong&gt; with a strict lifecycle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI performs bounded reasoning&lt;/li&gt;
&lt;li&gt;Humans explicitly decide (ACCEPT / MODIFY / REJECT)&lt;/li&gt;
&lt;li&gt;The system enforces authority and lifecycle rules&lt;/li&gt;
&lt;li&gt;Outcomes are recorded as append-only organizational memory&lt;/li&gt;
&lt;li&gt;All artifacts are cryptographically verifiable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AI never decides. Humans always decide.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is not an AI demo.&lt;br&gt;
It’s an &lt;strong&gt;incident lifecycle system with AI inside it&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;
  
  
  The 90-Second Pitch
&lt;/h2&gt;

&lt;p&gt;Most incident tools do one of two things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give you AI suggestions with no governance&lt;/li&gt;
&lt;li&gt;Give you checklists with no intelligence&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Sherlock separates &lt;strong&gt;intelligence from authority&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AI proposes multiple competing hypotheses with evidence and confidence&lt;/li&gt;
&lt;li&gt;Humans approve or reject the outcome&lt;/li&gt;
&lt;li&gt;The system enforces lifecycle gates, memory isolation, and execution rules&lt;/li&gt;
&lt;li&gt;Every decision is immutable and externally verifiable&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are &lt;strong&gt;no feedback loops&lt;/strong&gt;, &lt;strong&gt;no auto-approval&lt;/strong&gt;, and &lt;strong&gt;no adaptive behavior&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;This is what production-grade AI assistance looks like.&lt;/p&gt;


&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Video Walkthrough (Full End-to-End Run)
&lt;/h3&gt;

&lt;p&gt;

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


&lt;/p&gt;

&lt;h3&gt;
  
  
  GitHub Repository
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/kris70lesgo/sherlock-demo" rel="noopener noreferrer"&gt;https://github.com/kris70lesgo/sherlock-demo&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  One-Command Demo
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./run-demo.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This executes the &lt;strong&gt;entire incident lifecycle&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Evidence normalization and trust validation&lt;/li&gt;
&lt;li&gt;Scope reduction (thousands of log lines → a few signals)&lt;/li&gt;
&lt;li&gt;AI hypothesis reasoning using &lt;strong&gt;GitHub Copilot CLI&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Mandatory human governance (ACCEPT / MODIFY / REJECT)&lt;/li&gt;
&lt;li&gt;Organizational memory write (append only, read only)&lt;/li&gt;
&lt;li&gt;Operational integration (Slack / JIRA simulation)&lt;/li&gt;
&lt;li&gt;Cryptographic provenance and trust report generation&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Fresh Incident IDs
&lt;/h3&gt;

&lt;p&gt;To avoid append-only memory conflicts, you can run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./sherlock investigate INC-999
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Copilot Auth vs Offline Mode
&lt;/h2&gt;

&lt;p&gt;Sherlock uses &lt;strong&gt;GitHub Copilot CLI&lt;/strong&gt; for Phase 3 reasoning when authenticated.&lt;/p&gt;

&lt;p&gt;If Copilot is not authenticated, Sherlock &lt;strong&gt;falls back to an offline post-mortem generator&lt;/strong&gt; so the demo still completes.&lt;/p&gt;

&lt;p&gt;To authenticate Copilot:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;gh auth login
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  My Experience with GitHub Copilot CLI
&lt;/h2&gt;

&lt;p&gt;Copilot CLI was used as a &lt;strong&gt;reasoning engine&lt;/strong&gt;, not as an authority.&lt;/p&gt;

&lt;p&gt;Specifically:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Copilot generates &lt;strong&gt;multi-hypothesis RCAs&lt;/strong&gt; from scoped evidence&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Each hypothesis includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Evidence FOR&lt;/li&gt;
&lt;li&gt;Evidence AGAINST&lt;/li&gt;
&lt;li&gt;Confidence contribution&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Confidence is budgeted and uncertainty is explicit&lt;/p&gt;&lt;/li&gt;

&lt;li&gt;&lt;p&gt;Hypotheses can be ruled out with justification&lt;/p&gt;&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Crucially:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Copilot &lt;strong&gt;cannot finalize anything&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;It cannot approve itself&lt;/li&gt;
&lt;li&gt;It cannot modify governance rules&lt;/li&gt;
&lt;li&gt;Its output is preserved even when rejected&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most valuable aspect of Copilot CLI here wasn’t speed  it was &lt;strong&gt;structured reasoning under constraints&lt;/strong&gt;.&lt;br&gt;
Once those constraints were clear, Copilot became a reliable component in a larger system instead of a black box.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;Sherlock demonstrates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How to use Copilot CLI &lt;strong&gt;inside a production workflow&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;How to prevent AI feedback loops&lt;/li&gt;
&lt;li&gt;How to enforce human authority mechanically&lt;/li&gt;
&lt;li&gt;How to make AI output externally verifiable&lt;/li&gt;
&lt;li&gt;How to integrate AI without letting it run the system&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most tools ask you to trust them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sherlock gives you a way to verify them.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That’s the difference between a demo and a product.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Notes
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Language: Bash + Python&lt;/li&gt;
&lt;li&gt;Interface: CLI (interactive and non-interactive modes)&lt;/li&gt;
&lt;li&gt;Architecture: 7 phase, strictly isolated pipeline&lt;/li&gt;
&lt;li&gt;Status: Frozen, validated, demo ready&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for checking it out.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>githubchallenge</category>
      <category>cli</category>
      <category>githubcopilot</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Sun, 01 Feb 2026 03:49:52 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/-a53</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/-a53</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/paimon_573760ccaa1b3492b4" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F3471220%2Fa188e842-2518-463a-b0a7-b65214425aaf.png" alt="paimon_573760ccaa1b3492b4"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/paimon_573760ccaa1b3492b4/3d-first-portfolio-built-with-antigravity-1hmm" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;3D-First Portfolio Built with Antigravity&lt;/h2&gt;
      &lt;h3&gt;Paimon ・ Jan 31&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devchallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#googleaichallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#portfolio&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#gemini&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>portfolio</category>
      <category>gemini</category>
    </item>
    <item>
      <title>Building a Portfolio with Gemini - New Year, New You Portfolio Challenge</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Sat, 31 Jan 2026 13:50:57 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/building-a-portfolio-with-gemini-new-year-new-you-portfolio-challenge-314m</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/building-a-portfolio-with-gemini-new-year-new-you-portfolio-challenge-314m</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/new-year-new-you-google-ai-2025-12-31"&gt;New Year, New You Portfolio Challenge Presented by Google AI&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  About Me
&lt;/h2&gt;

&lt;p&gt;This project started with a simple question:&lt;/p&gt;

&lt;p&gt;What happens when you stop treating AI as a tool that writes code, and start treating it as a creative and technical collaborator?&lt;br&gt;
I wanted to explore how far modern Google AI tools specifically &lt;strong&gt;Gemini 3&lt;/strong&gt; and &lt;strong&gt;Antigravity&lt;/strong&gt; could take an idea when used for &lt;em&gt;thinking, designing, iterating, and refining&lt;/em&gt;, not just generating snippets.&lt;/p&gt;

&lt;p&gt;This portfolio is the result of that exploration.&lt;/p&gt;

&lt;p&gt;It’s not meant to be flashy for the sake of it. It’s meant to show how clarity, motion, and structure can emerge naturally when ideas are shaped collaboratively with AI from the very first layout decision to the final animation timing.&lt;/p&gt;


&lt;h2&gt;
  
  
  Portfolio
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Video Walkthrough
&lt;/h3&gt;

&lt;p&gt;To better showcase the motion, flow, and animation details, here’s a short walkthrough of the portfolio.&lt;/p&gt;

&lt;p&gt;This video highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The hero intro animation&lt;/li&gt;
&lt;li&gt;Scroll-based reveals and transitions&lt;/li&gt;
&lt;li&gt;Micro-interactions and motion pacing&lt;/li&gt;
&lt;li&gt;Overall visual flow and structure&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/o5Cqg9tsrzU"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note on presentation&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;While the portfolio is fully deployed on Google Cloud Run, embedding it directly inside a DEV post limits viewport size and affects animation timing.&lt;/p&gt;

&lt;p&gt;To preserve the intended experience, a short video walkthrough is included below, along with a direct link to view the portfolio in a full browser window.&lt;/p&gt;


&lt;div class="ltag__cloud-run"&gt;
  &lt;iframe height="600px" src="https://port-709587781727.us-central1.run.app/"&gt;
  &lt;/iframe&gt;
&lt;/div&gt;


&lt;p&gt;Live Portfolio:&lt;br&gt;&lt;br&gt;
&lt;a href="https://port-709587781727.us-central1.run.app/" rel="noopener noreferrer"&gt;https://port-709587781727.us-central1.run.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;--labels dev-tutorial=devnewyear2026&lt;/p&gt;




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

&lt;p&gt;This portfolio was built through an &lt;strong&gt;AI-assisted vibe-coding workflow&lt;/strong&gt; powered by &lt;strong&gt;Gemini 3&lt;/strong&gt; and &lt;strong&gt;Google Antigravity&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Rather than starting with rigid wireframes or a fixed specification, the process focused on &lt;em&gt;momentum&lt;/em&gt; — letting ideas evolve quickly while keeping the system coherent.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gemini 3 as a Creative and Technical Partner
&lt;/h3&gt;

&lt;p&gt;Gemini 3 was used throughout development as a reasoning and design partner.&lt;/p&gt;

&lt;p&gt;Instead of asking it to “write code,” I used Gemini to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Explore multiple animation approaches before choosing one
&lt;/li&gt;
&lt;li&gt;Reason about motion pacing and visual hierarchy
&lt;/li&gt;
&lt;li&gt;Design section flow and narrative structure
&lt;/li&gt;
&lt;li&gt;Stress-test interaction ideas conceptually
&lt;/li&gt;
&lt;li&gt;Refine micro-interactions and transitions
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Gemini helped answer questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How long should an intro animation last before it feels slow?&lt;/li&gt;
&lt;li&gt;How do you guide attention without overwhelming the user?&lt;/li&gt;
&lt;li&gt;Where should motion stop so content can breathe?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This kind of feedback loop made it possible to move fast &lt;strong&gt;without losing intention&lt;/strong&gt;.&lt;/p&gt;




&lt;h3&gt;
  
  
  Hero Intro Animation
&lt;/h3&gt;

&lt;p&gt;One of the clearest examples of Gemini’s impact is the &lt;strong&gt;hero intro animation&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of dropping the user into a static page, the portfolio opens with a carefully paced sequence:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The hero content begins subtly scaled down and centered
&lt;/li&gt;
&lt;li&gt;It fades in and scales up smoothly
&lt;/li&gt;
&lt;li&gt;The layout then transitions into its natural position
&lt;/li&gt;
&lt;li&gt;Supporting elements appear in a controlled, staggered flow
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This animation was iterated multiple times using Gemini to evaluate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Timing curves
&lt;/li&gt;
&lt;li&gt;Ease functions
&lt;/li&gt;
&lt;li&gt;Entry order
&lt;/li&gt;
&lt;li&gt;Emotional impact vs. speed
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result is an intro that feels cinematic but restrained designed to set tone, not steal attention.&lt;/p&gt;




&lt;h3&gt;
  
  
  Antigravity as the Execution Engine
&lt;/h3&gt;

&lt;p&gt;While Gemini helped shape ideas, &lt;strong&gt;Antigravity&lt;/strong&gt; made execution fluid.&lt;br&gt;
Antigravity allowed rapid iteration across:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Component structure
&lt;/li&gt;
&lt;li&gt;Animation tuning
&lt;/li&gt;
&lt;li&gt;Layout refinements
&lt;/li&gt;
&lt;li&gt;Refactors without breaking flow
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of working file by file, Antigravity made it possible to think &lt;em&gt;system-wide&lt;/em&gt;  adjusting animation logic, layout, and styling together while maintaining consistency.&lt;/p&gt;

&lt;p&gt;This kept the creative momentum high without sacrificing technical cleanliness.&lt;/p&gt;




&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Next.js (App Router)&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;li&gt;GSAP for complex timeline animations&lt;/li&gt;
&lt;li&gt;Framer Motion for scroll-based reveals and micro-interactions&lt;/li&gt;
&lt;li&gt;Radix UI / shadcn for accessible primitives&lt;/li&gt;
&lt;li&gt;Deployed on Google Cloud Run&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What I’m Most Proud Of
&lt;/h2&gt;

&lt;h3&gt;
  
  
  The Flow
&lt;/h3&gt;

&lt;p&gt;Nothing in this portfolio is abrupt.&lt;br&gt;
Sections don’t “appear.”&lt;br&gt;&lt;br&gt;
They arrive.&lt;br&gt;
Animations guide the eye instead of competing for attention, creating a calm, readable experience that still feels alive.&lt;/p&gt;




&lt;h3&gt;
  
  
  Animation Discipline
&lt;/h3&gt;

&lt;p&gt;Motion is used sparingly and purposefully:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GSAP handles moments that require precision and choreography
&lt;/li&gt;
&lt;li&gt;Framer Motion handles moments that should feel natural and responsive
&lt;/li&gt;
&lt;li&gt;CSS handles everything that doesn’t need JavaScript
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This balance keeps performance high and interactions smooth.&lt;/p&gt;




&lt;h3&gt;
  
  
  AI as an Enabler, Not a Gimmick
&lt;/h3&gt;

&lt;p&gt;There’s no visible chatbot.&lt;br&gt;&lt;br&gt;
No AI button.&lt;br&gt;
Yet AI is present in every decision.&lt;br&gt;
Gemini and Antigravity didn’t replace creativity they &lt;strong&gt;amplified it&lt;/strong&gt;. They made it possible to explore more ideas, discard weaker ones faster, and refine the strongest concepts with confidence.&lt;/p&gt;




&lt;h2&gt;
  
  
  Closing Thought
&lt;/h2&gt;

&lt;p&gt;This project isn’t about a portfolio.&lt;br&gt;
It’s about possibility.&lt;br&gt;
It’s about what happens when developers stop asking AI to &lt;em&gt;do the work&lt;/em&gt; and start asking it to &lt;em&gt;think with them&lt;/em&gt;.&lt;br&gt;
Gemini 3 and Antigravity didn’t just help build this site they shaped how it came to life.&lt;br&gt;
And that’s the most exciting part.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>portfolio</category>
      <category>gemini</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Agastya Khati</dc:creator>
      <pubDate>Fri, 30 Jan 2026 05:47:37 +0000</pubDate>
      <link>https://dev.to/agastya_khati_f72c89077c8/-586j</link>
      <guid>https://dev.to/agastya_khati_f72c89077c8/-586j</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/shobhit_kapoor_666e8b9160" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&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%2Fuser%2Fprofile_image%2F3704868%2F04c65932-e51f-4607-85de-6d2871aa77d6.png" alt="shobhit_kapoor_666e8b9160"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/shobhit_kapoor_666e8b9160/a-macos-inspired-operating-system-portfolio-built-using-antigravity-12bg" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;A macOS-Inspired Operating System Portfolio Built using Antigravity&lt;/h2&gt;
      &lt;h3&gt;Shobhit Kapoor ・ Jan 30&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#devchallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#googleaichallenge&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#portfolio&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#gemini&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>portfolio</category>
      <category>gemini</category>
    </item>
  </channel>
</rss>
