<?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: Eric Nangomba</title>
    <description>The latest articles on DEV Community by Eric Nangomba (@ericnangomba).</description>
    <link>https://dev.to/ericnangomba</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%2F1146471%2Fb413e10b-804a-4172-ab76-9f2507e451a5.png</url>
      <title>DEV Community: Eric Nangomba</title>
      <link>https://dev.to/ericnangomba</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ericnangomba"/>
    <language>en</language>
    <item>
      <title>🇿🇦 TenderAgent: Local AI Workspace for SMME Procurement Protection with Mastra &amp; Gemma</title>
      <dc:creator>Eric Nangomba</dc:creator>
      <pubDate>Mon, 19 Oct 2026 07:34:51 +0000</pubDate>
      <link>https://dev.to/ericnangomba/tenderagent-local-ai-workspace-for-smme-procurement-protection-with-mastra-gemma-41op</link>
      <guid>https://dev.to/ericnangomba/tenderagent-local-ai-workspace-for-smme-procurement-protection-with-mastra-gemma-41op</guid>
      <description>&lt;p&gt;🇿🇦 TenderAgent: Local AI Workspace for SMME Procurement Protection with Mastra &amp;amp; Gemma&lt;/p&gt;

&lt;p&gt;Theme: Side Hustle Submission (Week 2)&lt;/p&gt;

&lt;h1&gt;
  
  
  devchallenge #hf26challenge #hacktoberfest #softwaredevelopment
&lt;/h1&gt;

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

&lt;p&gt;Independent contractors and emerging small businesses (SMMEs) in South Africa lose thousands of Rands every year to two expensive, recurring procurement traps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The Compliance Omission Trap: Submitting public or corporate bids that conceal unstated mandatory returnables, missing statutory proofs, or vague evaluation metrics—resulting in instant disqualification.&lt;/li&gt;
&lt;li&gt;The Administrative Token Bottleneck: Spending days manually extracting requirements, cross-referencing local pricing frameworks, and drafting meticulous responses instead of focusing on physical execution.
Most small business owners cannot use cloud-hosted AI tools (like ChatGPT or Claude) to analyze their incoming Requests for Proposals (RFPs) or generate bid text because doing so violates strict client Non-Disclosure Agreements (NDAs), exposes unreleased corporate pricing models, and directly leaks confidential proprietary strategies to third-party model providers.
TenderAgent is a private, local desktop productivity workspace built for South African small business owners. It provides deterministic, AI-assisted boundary protection directly on consumer laptop hardware without sending a single byte of sensitive client data to the cloud:
• RfpCheck: Ingests unstructured tender guidelines, extracts verified factual compliance requirements, isolates unstated assumptions, flags critical statutory omissions, and generates immediate clarifying queries.
• PppfaShield: Semantically and mathematically evaluates incoming contract parameters against the Preferential Procurement Policy Framework Act (PPPFA), producing automated scoring matrices (80/20 vs 90/10 Allocation Systems) using integer minor-unit math rules.
• SbdAuto: Programmatically generates defensible, four-section bid response drafts strictly pre-mapped to state procurement structures (including SBD 1, SBD 4, SBD 6.1, SBD 8, and SBD 9 schedules) with zero corporate token dependency.
• PopiaSanitizer: Client-side privacy filter running on an explicit system invariant stating that the core engine never uploads raw data layers. It automatically masks South African ID numbers, cellular contacts, and banking variables in a local sandboxed environment.
• VatPricing: Itemized commercial price schedule tool running on a strict multi-currency pipeline that handles multi-tier estimations while maintaining all calculations natively inclusive of the standard 15% ZAR VAT rule framework.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;🎯 Proposed Value &amp;amp; Willingness to Pay&lt;/p&gt;

&lt;p&gt;TenderAgent addresses a critical, immediate financial drain: navigating the administrative red tape of public and corporate procurement typically costs an emerging contractor days of unbilled labor or thousands of Rands in professional consultant fees.&lt;br&gt;
Our core user persona is Thomas Dlamini, an independent construction and IT subcontractor. Thomas confirmed the massive friction of the traditional approach: compiling an institutional-grade bid using generic cloud models like Gemini, manually cleaning up hallucinations, and formatting compliance schedules manually takes him 2 full days at the absolute quickest.&lt;br&gt;
Using TenderAgent running locally, Thomas was able to ingest the RFP, audit his returnables, run the PPPFA pricing simulation, and export a ready-to-print bid response skeleton in less than 30 minutes.&lt;br&gt;
Based on these verified economics, our commercial hypothesis is a R250/month subscription or an affordable perpetual desktop license model designed for local SMME budgets. (Note: This is an empirical pricing hypothesis based on freelancer pain points; no live commercial revenue has been collected prior to challenge release).&lt;/p&gt;

&lt;p&gt;🛠️ How I Built It (The Tech Stack)&lt;/p&gt;

&lt;p&gt;To ensure complete data protection and highly optimized token processing loops, TenderAgent utilizes an integrated open-source architecture:&lt;br&gt;
• Agent Orchestration (Mastra AI SDK): Coordinates our multi-agent task execution pipelines. Mastra handles document segment chunking, routes extracted compliance data points, and drives the response drafting pipelines without state leakage.&lt;br&gt;
• The Model Brain (Gemma): Implements the open-weight Gemma model running completely via local instance endpoints to handle processing tasks privately.&lt;br&gt;
• Telemetry Pipeline (Sentry Agent Tracing): Tracks async processing paths to identify execution loops. I deep-instrumented the pipeline with explicit custom spans visible in the console interface:&lt;br&gt;
    • agent.pipeline: Root transaction monitoring end-to-end user document ingestion lifecycles.&lt;br&gt;
    • popia.sanitize: Tracks client-side PII scrubbing and masking.&lt;br&gt;
    • agent.llm.call: Captures exact processing latency and tokens inside the Gemma local execution space.&lt;br&gt;
    • compliance.evaluate: Monitors statutory formula checks (CSD, SARS, B-BBEE status levels).&lt;/p&gt;

&lt;p&gt;💡 Why Open Innovation Matters Here&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Absolute POPIA Compliance (Act 4 of 2013): Uploading small business balance sheets, director IDs, and pricing strategies to closed-source corporate LLM APIs exposes users to massive data compliance risks. Open-source local models allow TenderAgent to guarantee small businesses that their corporate data remains sandboxed.&lt;/li&gt;
&lt;li&gt;Defeating the Token Tax: Processing massive 80-page government tender documents consumes immense token volume. Running this through closed billing engines would cost R50 to R100 per tender analysis pass, making an affordable subscription model for SMMEs impossible. Running open-weights keeps our marginal processing costs at zero.&lt;/li&gt;
&lt;li&gt;Hyper-Local Context Grounding: Closed, generalized models frequently hallucinate or butcher localized context. An open framework allowed me to natively ground the engine to recognize South African acronyms, distinct standard municipal billing items, and local construction tiers effortlessly. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fuiwx2387m8iceoz0mqqd.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%2Fuiwx2387m8iceoz0mqqd.png" alt=" " width="800" height="935"&gt;&lt;/a&gt;&lt;a href="https://github.com/ericnangomba/TenderAgent.git" rel="noopener noreferrer"&gt;https://github.com/ericnangomba/TenderAgent.git&lt;/a&gt;&lt;/p&gt;

</description>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
