INITIALIZING SYSTEM...
SYS::ONLINE // v4.2.1
CPU: 12% // MEM: 4.2GB
LAT: 23ms // NET::STABLE
TIME::00:00:00 // SYS::NOMINAL
INITIALIZING_SYSTEM...

I build systems,
not just websites.

I'm Dhanush Kumar — full-stack developer shipping production business systems.

Custom CRM in production WhatsApp + email automation 6 live full-stack demos
Dhanush Kumar
// ABOUT.DAT

From requirements to
production systems

I'm a Full-Stack Developer focused on business systems — the CRM, automation and internal tooling companies actually run their day on. I own the whole path: requirements → schema → APIs → UI → deploy → maintenance.

My core stack is React, Node.js, JavaScript/TypeScript, SQL/MySQL, REST APIs, AWS and Docker — the tools I reach for by default. I've also shipped with Java, Spring Boot, Hibernate, Python, PHP, Cloudflare Pages & Functions and GitHub Actions CI/CD.

1+ year of professional experience across the full lifecycle: requirement analysis, database design, development, deployment and ongoing maintenance — including a CRM built end-to-end for a live client operation.

1+
YEARS_EXP
8+
PROJECTS_SHIPPED
6
LIVE_DEMOS
3
PROD_SYSTEMS
// SKILLS.SYS

Core stack I ship with

Eight tools I use daily — plus the wider set I have shipped real projects with.

CORE
React
Node.js
TSTypeScript
SQLSQL
APIREST API
JSJavaScript
awsAWS
GitHub
Docker
CICI
Git
TwTailwind
Core stack // what I build with every day
React
Node.js
JavaScript
TypeScript
SQL / MySQL
REST APIs
AWS
Docker
Also worked with // shipped in real projects, secondary
Java
Spring Boot
Hibernate
Python
PHP
Cloudflare Pages
GitHub Actions / CI-CD
Tailwind CSS
// EXPERIENCE.LOG

Professional journey

2024 — PRESENT
LDR Survey — CRM Developer
Full-Time // Own a custom CRM end-to-end: requirement analysis → schema → APIs → UI → deployment → maintenance.
  • Built lead, customer and sales-pipeline modules with role-based dashboards.
  • Wired email automation campaigns and WhatsApp API follow-ups with delivery tracking.
  • Added quotation & billing workflows and real-time notifications.
  • Handle schema changes, deploys and bug fixes in production.
Stack: JavaScript · REST APIs · SQL/MySQL · Tailwind CSS · AWS
2025
Full-Stack Developer
Freelance // Delivery for clients — apps, CRM features and the hosting they run on.
  • Shipped web apps with React, Node.js and SQL, front to back.
  • Automated quotation, billing and communication flows inside client CRMs.
  • Set up CI/CD pipelines and managed client hosting infrastructure.
Stack: React · Node.js · SQL · CI/CD · Cloudflare/AWS
2024
Junior Developer
Independent Projects // Foundations — first full-stack builds and DevOps tooling.
  • Learned HTML, CSS, JavaScript and backend fundamentals.
  • Built first full-stack applications; explored Docker and DevOps tooling.
Stack: JavaScript · SQL · Docker
// PROJECTS.DB

Projects, proven

Three production systems in depth — problem, architecture, stack, outcome. Below them, six live demos with working APIs you can open right now.

01

Custom CRM — lead to invoice, end to end

PRODUCTION · LDR SURVEY · 2024 — PRESENT · ROLE: SOLO FULL-STACK
Problem

Leads, customers and quotations lived in spreadsheets and chat threads. No single source of truth, no role separation, and follow-up only happened when someone remembered to do it.

What I built

A custom CRM I own end-to-end: requirement analysis → database schema → REST APIs → role-based UI → deployment → maintenance. One system for pipeline, quotes, billing and outreach.

  • Lead & customer management — every contact has one record with its full history.
  • Sales pipeline + role-based dashboards — each role sees only the data it is meant to see.
  • Quotation & billing workflows — quote → approval → invoice without leaving the app.
  • Automated outreach — email campaigns and WhatsApp follow-ups, tracked per recipient.
  • Real-time notifications — assignments and status changes surface the moment they happen.
Stack

JavaScript · REST APIs · SQL/MySQL · Tailwind CSS · AWS

Outcome

Spreadsheet-and-chat chaos replaced by one system of record with automated follow-up — still in daily use, still maintained by me.

Architecture — request path
BROWSER UI JS + Tailwind REST API auth · roles · validation MySQL leads · quotes · invoices EMAIL SERVICE campaigns WHATSAPP API follow-ups
DEEPER — SCHEMA, ROLES, OPERATIONS
  • Relational model: customers → contacts → quotes → invoices, so a quotation always traces back to the lead and the person who approved it.
  • Authorization at the API, not the UI: roles are checked server-side — hiding a button was never the security boundary.
  • Status history: every pipeline transition is recorded: who moved it, when, and the note left with it.
  • Outreach is data, not a mailbox: each send is logged against the contact with its delivery result.
  • Ownership: I take the requirement from the business, design the schema change, ship it, and fix what breaks — no hand-offs.
02

WhatsApp & Email Automation — campaigns with receipts

PRODUCTION · LDR SURVEY · 2024 — PRESENT · ROLE: FULL-STACK
Problem

Follow-ups went out one contact at a time from personal inboxes. Nobody could answer "who got what, when, and did it land" — and nothing was sent unless someone remembered.

What I built

An automation portal that schedules WhatsApp and email campaigns from reusable templates, sends them through provider APIs, and writes every delivery result back to one dashboard.

  • Scheduled campaigns — one-off and recurring, created from the dashboard.
  • Reusable templates with variables (name, reference number), so a message is written once.
  • Two channels, one definition — the same audience is reached on WhatsApp and email from a single campaign.
  • Delivery tracking per recipient — failures surface in the dashboard instead of hiding in a provider console.
  • One audit trail — every send is tied to the contact record and the campaign that triggered it.
Architecture — campaign lifecycle
DASHBOARD compose · schedule CAMPAIGN API render · pace · log SCHEDULER due sends queue DB · templates · send log WHATSAPP API results callback EMAIL SERVICE bounce status
Stack

JavaScript · REST APIs · SQL · WhatsApp API · Email API · AWS

Outcome

Manual one-by-one outreach became scheduled, auditable campaigns — follow-up no longer depends on someone remembering to do it.

DEEPER — SENDING WITHOUT SURPRISES
  • Pacing over volume: provider rate limits are the real constraint — sends are paced so a campaign never looks like abuse and gets the number flagged.
  • Templates are rendered at send time: variables are filled server-side, so a recipient never sees a raw {{name}}.
  • Status is part of the record: delivery and bounce results are written back to the send row — that is what makes the dashboard honest.
  • Failures are visible, not silent: a failed batch shows up as a failed batch, and the operator decides whether to re-run it.
03

AI Lead Finder & Chatbot — prospects in, answers out

PRODUCTS · LEAD GEN + SUPPORT · ROLE: FULL-STACK + PROMPT ENGINEERING
Problem

Prospect research was manual and slow — lists built by hand, qualification decided differently by everyone. Meanwhile, site visitors who did not find an answer left without leaving a trace.

What I built

Two connected tools: a finder that discovers, enriches and scores prospects from the web and pushes qualified leads into the CRM, plus an embeddable chat widget trained on site content that answers, captures, and hands off to a human.

  • Discover → enrich → score: a lead reaches the CRM with context attached, not just a name and a domain.
  • Qualification is explicit: scoring rules live in code, so the same lead is judged the same way every time.
  • One-line embed: the widget is a single script tag that drops into any website.
  • Grounded answers: the assistant answers from the site's own content instead of inventing one.
  • Capture + handoff: what the visitor asked for is written as a lead, with the conversation attached for whoever picks it up.
Architecture — two pipelines, one CRM
LANE A — FIND LANE B — ANSWER PROSPECT SOURCES web discovery FINDER extract · enrich SCORER fit rules CRM qualified lead SITE VISITOR any website CHAT WIDGET one script tag LLM + SITE CTX grounded reply LEAD + NOTIFY with transcript
Stack

LLM APIs · JavaScript · REST APIs · SQL · prompt engineering · Cloudflare

Outcome

Prospect research that used to eat a morning runs as a job, and the website turns quiet visitors into scored CRM leads with the conversation already attached.

DEEPER — WHY IT DOESN'T MAKE THINGS UP
  • Grounding before generation: the reply is built from retrieved site content; when nothing matches, the widget says so and offers a human instead of improvising.
  • Score before CRM: junk is filtered before a person sees it, which is what keeps the CRM trustworthy for everyone downstream.
  • Prompts are code: they live in the repo with a change history, not in a chat window nobody can review.
  • Handoff carries context: the human who picks up the chat reads the transcript, so the visitor never repeats themselves.
// LIVE_DEMOS // 6 DEPLOYED

Six apps you can open right now

Not screenshots. Each one runs on this domain behind its own Cloudflare Pages Functions API and KV namespace — source in my GitHub repo.

Weather Dashboard
Live

City search with geocoding, current conditions, hourly strip and a multi-day forecast. Recent searches persist across visits.

Pages Functions · OpenWeatherMap · KV
Employee Management
Live

Login with bearer sessions, employee records, attendance and leave requests, plus payroll reports — five endpoints behind one role check.

Pages Functions · Bearer auth · KV
Task Manager
Live

Kanban boards with drag-and-drop cards, a per-board activity log, and tasks persisted through dedicated boards / tasks / activity endpoints.

Pages Functions · boards API · KV
E-Commerce Store
Live

Catalogue, cart and checkout with register / login (token kept client-side) and real order placement — the full purchase path, not a mock-up.

Pages Functions · auth · cart · KV
Analytics Dashboard
Live

An ingest endpoint receives events, charts update live, and any date range exports to CSV / JSON — pipelines you can watch run.

Pages Functions · event ingest · KV
Content CMS
Live

Dashboard, content editor, media library and SEO fields behind login — the CMS shape every client eventually asks for.

Pages Functions · content & media · KV
// SERVICES.CFG

What I can deliver

Fixed scope, clear deliverables — pick what your project actually needs, not a package with filler.

Web Development

Business websites, dashboards and internal tools built with JavaScript, React, Node.js, REST APIs, Tailwind, AWS and Cloudflare.

Business Automation

CRMs, quotation & billing flows, and WhatsApp + email pipelines that take manual follow-up out of the day.

Backend Development

Node.js APIs with SQL storage, auth and role checks — deployed on AWS or Cloudflare behind CI/CD.

UI/UX Design

Interfaces designed in Figma and shipped with Tailwind CSS — responsive all the way down to 320px screens.

AI Integration

Chat widgets, lead scoring and AI-assisted content flows wired into the data you already have.

Deployment & Maintenance

CI/CD pipelines, hosting setup, and the unglamorous fixes and upkeep that keep production healthy after go-live.

// COMMS.LINK

Let's work together

Tell me what needs building — a CRM, an automation, a whole product. This form posts to a Cloudflare Pages Function that emails me directly, so it actually sends.

Available for freelance & full-time Replies within 24 hours
Transmission received.