๐๐ฒ๐ฎ๐ฑ๐น๐ถ๐ป๐ฒ: What started as a simple B2C expense tracker has officially pivoted into a fully automated B2B Financial SaaS. Introducing ๐๐ถ๐ป๐ฎ๐ป๐ฆ๐บ๐ฎ๐ฟ๐.
๐๐ผ๐ฑ๐: I realized that startup founders and agency owners spend countless hours manually categorizing bank statements and tracking operational costs. I wanted to build a solution that entirely automates this bookkeeping process.
Building the core featureโan "๐๐ ๐๐๐ง๐ค ๐๐ญ๐๐ญ๐๐ฆ๐๐ง๐ญ ๐๐๐ซ๐ฌ๐๐ซ"โwas one of the toughest technical challenges Iโve faced. I hit a massive roadblock when Next.js 14โs Webpack bundler kept breaking legacy PDF OCR libraries in serverless environments.
Instead of compromising on the feature, I completely re-architected the data pipeline:
โข I bypassed Webpack issues by implementing pdf2json on a strict Node.js runtime for secure, server-side text extraction.
โข I piped this raw text into Groqโs LLaMA-3.1-8b model using highly optimized system prompts.
โข The result? Lightning-fast, deterministic extraction that converts raw PDF text into perfectly structured JSON arrays.
Now, users can drag-and-drop a PDF statement, and the AI instantly categorizes every transaction (Infrastructure, Payroll, Revenue) into a 'pending' staging area.
Once approved, the data flows securely via Drizzle ORM into a Neon PostgreSQL database, updating real-time Recharts dashboards.
๐ป๐๐๐ ๐บ๐๐๐๐: Next.js App Router, Tailwind CSS, Shadcn UI, Clerk Auth, Drizzle ORM, Neon DB, and Groq SDK.
๐ช๐ต๐ฎ๐'๐ ๐ก๐ฒ๐ ๐? I am currently looking for my next full-time opportunity as a Full Stack Developer (based in Bangalore or anywhere).
I am also actively taking on ๐ณ๐ฟ๐ฒ๐ฒ๐น๐ฎ๐ป๐ฐ๐ฒ ๐ฝ๐ฟ๐ผ๐ท๐ฒ๐ฐ๐๐. If you are a founder or agency looking to build scalable, AI-integrated SaaS MVPs without the technical headache, let's connect.
Check out the demo video below to see the AI parser in action!
๐ Live Project: https://lnkd.in/gSNu3cAK
(https://lnkd.in/gSNu3cAK)hashtag#BuildInPublic (https://www.linkedin.com/search/results/all/?keywords=%23buildinpublic&origin=HASH_TAG_FROM_FEED) hashtag#Nextjs (https://www.linkedin.com/search/results/all/?keywords=%23nextjs&origin=HASH_TAG_FROM_FEED) hashtag#FullStackDevelopment (https://www.linkedin.com/search/results/all/?keywords=%23fullstackdevelopment&origin=HASH_TAG_FROM_FEED) hashtag#SaaS (https://www.linkedin.com/search/results/all/?keywords=%23saas&origin=HASH_TAG_FROM_FEED) hashtag#AI (https://www.linkedin.com/search/results/all/?keywords=%23ai&origin=HASH_TAG_FROM_FEED) hashtag#Groq (https://www.linkedin.com/search/results/all/?keywords=%23groq&origin=HASH_TAG_FROM_FEED) hashtag#PostgreSQL (https://www.linkedin.com/search/results/all/?keywords=%23postgresql&origin=HASH_TAG_FROM_FEED) hashtag#WebDevelopment (https://www.linkedin.com/search/results/all/?keywords=%23webdevelopment&origin=HASH_TAG_FROM_FEED) hashtag#FreelanceDeveloper (https://www.linkedin.com/search/results/all/?keywords=%23freelancedeveloper&origin=HASH_TAG_FROM_FEED) hashtag#Hiring (https://www.linkedin.com/search/results/all/?keywords=%23hiring&origin=HASH_TAG_FROM_FEED)
1
4
I recently architected and built VedaAI Assessment Creator, a personal project designed to transform unstructured notes and files (PDFs, DOCX) into highly structured, curriculum-aligned exam papers.
Building enterprise-grade applications at scale requires looking beyond simply making API calls. For this build, I wanted to focus entirely on non-blocking architectures and deterministic AI outputs.
Here is a breakdown of the technical decisions:
Asynchronous Workers: Instead of blocking the main HTTP thread during heavy file parsing and AI inference, I implemented a distributed task queue using BullMQ and Upstash Serverless Redis. The Express API responds in under 100ms, while background workers handle the heavy lifting.
Deterministic AI: I opted for Groq (Llama-3.3-70b) utilizing its JSON mode. The sub-500ms inference time and guaranteed schema compliance eliminated the need for complex post-processing validation.
Real-Time Synchronization: A WebSocket setup broadcasts job completion events, updating the Next.js frontend instantly without relying on inefficient polling.
Database & State: MongoDB Atlas handles ACID transactions for complex document updates, while Zustand manages lightweight, atomic state slices on the frontend.
I also built in granular question regenerationโallowing users to re-run isolated inference calls for single questions without replacing the entire paperโand print-ready A4 PDF exports.
Designing this kind of scalable infrastructure directly supports my ongoing deep dive into advanced AI and machine learning systems.
You can check out the Live Link here: https://lnkd.in/geAXUtHC .
I would love to hear how others are handling asynchronous AI tasks in production!
1
8
Ever watched an AI write bad SQL, instantly realize its mistake, and rewrite it perfectlyโall without human intervention?
Over the weekend, I built the Autonomous Data Analyst Agent. It doesnโt just translate natural language to SQL; it actively debugs itself.
๐ง๐ต๐ฒ ๐ฃ๐ฟ๐ผ๐ฏ๐น๐ฒ๐บ: Enterprises want AI to query their proprietary databases, but LLMs often hallucinate columns or mess up syntax.
๐ง๐ต๐ฒ ๐ฆ๐ผ๐น๐๐๐ถ๐ผ๐ป: I engineered a Self-Correcting Reflection Loop using LangGraph.
Hereโs what happens under the hood:
1๏ธโฃ You ask a complex question in plain English.
2๏ธโฃ The LLM generates DuckDB-flavored SQL.
3๏ธโฃ The Executor node runs it securely in a local container.
4๏ธโฃ ๐ ๐ง๐ต๐ฒ ๐ ๐ฎ๐ด๐ถ๐ฐ: If DuckDB throws a parser error, the Reflection node catches it, feeds the error trace back to the LLM, and auto-corrects the query. 5๏ธโฃ Once successful, a Python agent generates a Matplotlib visualization, streaming everything to a sleek Next.js dark-mode UI.
Plus, I integrated LangGraph MemorySaver, allowing the agent to retain context for human-like follow-up questions.
๐ง๐ฒ๐ฐ๐ต ๐ฆ๐๐ฎ๐ฐ๐ธ: Next.js, FastAPI, LangGraph, DuckDB, Groq (Llama-3), Docker Compose.
Everything is fully containerized and open-source.
Drop a โญ on the repo and let me know what you think!
๐๐ถ๐๐๐๐ฏ ๐ฅ๐ฒ๐ฝ๐ผ: https://lnkd.in/ddnE9rgq
(https://lnkd.in/ddnE9rgq)hashtag#AI (https://www.linkedin.com/search/results/all/?keywords=%23ai&origin=HASH_TAG_FROM_FEED) hashtag#LangGraph (https://www.linkedin.com/search/results/all/?keywords=%23langgraph&origin=HASH_TAG_FROM_FEED) hashtag#DataEngineering (https://www.linkedin.com/search/results/all/?keywords=%23dataengineering&origin=HASH_TAG_FROM_FEED) hashtag#Nextjs (https://www.linkedin.com/search/results/all/?keywords=%23nextjs&origin=HASH_TAG_FROM_FEED) hashtag#FastAPI (https://www.linkedin.com/search/results/all/?keywords=%23fastapi&origin=HASH_TAG_FROM_FEED) hashtag#Docker (https://www.linkedin.com/search/results/all/?keywords=%23docker&origin=HASH_TAG_FROM_FEED) hashtag#MachineLearning (https://www.linkedin.com/search/results/all/?keywords=%23machinelearning&origin=HASH_TAG_FROM_FEED) hashtag#OpenSource (https://www.linkedin.com/search/results/all/?keywords=%23opensource&origin=HASH_TAG_FROM_FEED)
1
12
๐๐ฒ๐ฎ๐ฑ๐น๐ถ๐ป๐ฒ: Most Voice AI agents still feel like glorified walkie-talkies. So I built one that actually listens like a human.
Most voice bots today follow a rigid, linear loop: You speak โ Wait โ Bot speaks. If you dare interrupt them mid-sentence? They either completely ignore you or their context buffer gets totally mangled.
๐ง๐ผ ๐๐ผ๐น๐๐ฒ ๐๐ต๐ถ๐, I engineered Astra Duplex Agent โ a sub-50ms, ultra-low latency, full-duplex conversational Voice AI built to handle natural human interruptions seamlessly.
Here is what went into building the architecture under the hood:
True Full-Duplex WebSockets: Built on FastAPI, allowing real-time bi-directional audio streaming instead of turn-based HTTP requests.
Edge Voice Activity Detection (VAD): Deployed Silero VAD using ONNX Runtime to catch user barge-ins at the edge with near-zero overhead.
LangGraph State Machine: Instead of a simple monolithic script, the conversation logic is modeled as a state graph, giving precise control over execution flow.
Partial State Tracking & Memory Persistence: This was the trickiest part. When an interruption happens, Astra doesn't just stop audio playback โ an async kill-switch halts Groq's LLaMA-3.1 mid-token, calculates the exact partial sentence actually spoken by the TTS, and saves only that partial context to an Upstash Redis buffer.
Sub-50ms Inference & Streaming: Leveraged Groq LPU (LLaMA-3.1 + Whisper Large v3) paired with ElevenLabs Turbo v2.5 streaming.
The result? An agent that you can interrupt mid-thought, change topics with on the fly, and ask follow-up questions without it losing historical context.
Containerized with Docker and live on Render & Vercel.
Check out the full architecture & live demo below!
https://lnkd.in/eC6yak3i
(https://lnkd.in/eC6yak3i)https://lnkd.in/eN38HGZD
(https://lnkd.in/eN38HGZD)#VoiceAI (https://www.linkedin.com/search/results/all/?keywords=%23voiceai&origin=HASH_TAG_FROM_FEED) #GenerativeAI (https://www.linkedin.com/search/results/all/?keywords=%23generativeai&origin=HASH_TAG_FROM_FEED) #LangGraph (https://www.linkedin.com/search/results/all/?keywords=%23langgraph&origin=HASH_TAG_FROM_FEED) #SystemDesign (https://www.linkedin.com/search/results/all/?keywords=%23systemdesign&origin=HASH_TAG_FROM_FEED) #FastAPI (https://www.linkedin.com/search/results/all/?keywords=%23fastapi&origin=HASH_TAG_FROM_FEED) #MachineLearning (https://www.linkedin.com/search/results/all/?keywords=%23machinelearning&origin=HASH_TAG_FROM_FEED) #WebSockets (https://www.linkedin.com/search/results/all/?keywords=%23websockets&origin=HASH_TAG_FROM_FEED) #Python (https://www.linkedin.com/search/results/all/?keywords=%23python&origin=HASH_TAG_FROM_FEED) #AIENGINEERING (https://www.linkedin.com/search/results/all/?keywords=%23aiengineering&origin=HASH_TAG_FROM_FEED)