<?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: anandrajput0210</title>
    <description>The latest articles on DEV Community by anandrajput0210 (@anandrajput0210).</description>
    <link>https://dev.to/anandrajput0210</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%2F4171738%2F7a2cb259-e560-45da-82b0-9d658cbe1432.png</url>
      <title>DEV Community: anandrajput0210</title>
      <link>https://dev.to/anandrajput0210</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anandrajput0210"/>
    <language>en</language>
    <item>
      <title>Trust the Result: Building ForgeJudge in 72 Hours</title>
      <dc:creator>anandrajput0210</dc:creator>
      <pubDate>Thu, 08 Oct 2026 16:19:28 +0000</pubDate>
      <link>https://dev.to/anandrajput0210/trust-the-result-building-forgejudge-in-72-hours-3f42</link>
      <guid>https://dev.to/anandrajput0210/trust-the-result-building-forgejudge-in-72-hours-3f42</guid>
      <description>&lt;h1&gt;
  
  
  Building ForgeJudge in 72 Hours: Trust the Result
&lt;/h1&gt;

&lt;p&gt;What if the platform responsible for judging a hackathon was itself the thing you had to build?&lt;/p&gt;

&lt;p&gt;That was the challenge behind &lt;strong&gt;ForgeJudge&lt;/strong&gt;, the project I built during the DogFood 2026 hackathon.&lt;/p&gt;

&lt;p&gt;The goal wasn't simply to create another hackathon management platform. I wanted to build a system that could handle the difficult parts of judging: assignments, role isolation, scoring, progress tracking, normalization, and leaderboard results.&lt;/p&gt;

&lt;p&gt;And, as expected, some of the hardest problems weren't the ones I expected at the beginning.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Hackathons have a surprisingly complicated judging workflow.&lt;/p&gt;

&lt;p&gt;Participants submit projects. Organizers assign judges. Judges score projects using weighted criteria. The system needs to prevent judges from accessing other judges' assignments, calculate results correctly, track progress, and eventually produce a leaderboard.&lt;/p&gt;

&lt;p&gt;So the real question became:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Can I build a judging system where the result isn't just calculated, but can actually be trusted?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I built ForgeJudge around that question.&lt;/p&gt;




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

&lt;p&gt;ForgeJudge is a hackathon judging and management platform built as a modular monolith.&lt;/p&gt;

&lt;p&gt;The main stack was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;React&lt;/strong&gt; for the frontend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI&lt;/strong&gt; for the backend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PostgreSQL&lt;/strong&gt; for persistent data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docker Compose&lt;/strong&gt; for the development environment&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The platform includes functionality for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Authentication&lt;/li&gt;
&lt;li&gt;Events and tracks&lt;/li&gt;
&lt;li&gt;Teams&lt;/li&gt;
&lt;li&gt;Projects&lt;/li&gt;
&lt;li&gt;Project submissions&lt;/li&gt;
&lt;li&gt;Judge invitations&lt;/li&gt;
&lt;li&gt;Judge assignments&lt;/li&gt;
&lt;li&gt;Weighted rubrics&lt;/li&gt;
&lt;li&gt;Score submission&lt;/li&gt;
&lt;li&gt;Judge progress tracking&lt;/li&gt;
&lt;li&gt;Organizer judging progress&lt;/li&gt;
&lt;li&gt;CSV judging export&lt;/li&gt;
&lt;li&gt;Score normalization&lt;/li&gt;
&lt;li&gt;Leaderboards&lt;/li&gt;
&lt;li&gt;Role-based access control&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The architecture was intentionally kept relatively simple because the priority during a 72-hour hackathon was to build a working system rather than introduce unnecessary complexity.&lt;/p&gt;




&lt;h2&gt;
  
  
  The 72-Hour Constraint
&lt;/h2&gt;

&lt;p&gt;The first challenge was time.&lt;/p&gt;

&lt;p&gt;During a 72-hour hackathon, there isn't much room for perfect architecture diagrams, extensive refactoring, or rebuilding everything every time something goes wrong.&lt;/p&gt;

&lt;p&gt;I had to make decisions quickly.&lt;/p&gt;

&lt;p&gt;One thing that became particularly important was Git.&lt;/p&gt;

&lt;p&gt;Instead of treating GitHub as something to do at the end, I used Git as a safety net throughout development.&lt;/p&gt;

&lt;p&gt;The basic cycle was:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
bash
git status
git add .
git commit -m "Describe the change"
git push
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>hackathon</category>
      <category>fastapi</category>
      <category>docker</category>
      <category>postgressql</category>
    </item>
  </channel>
</rss>
