Skip to content
WitsCode

Munjal Auto, turning an undocumented site into a compliance publishing operation

Enterprise WebIndiaAutomotive manufacturing, BSE and NSE listed2026February 2026 to present

300+ websites shipped, clients in 4 countries

Munjal Auto, turning an undocumented site into a compliance publishing operation, project hero image
  • 32 of 32 requests delivered
  • 26 delivered the same day
  • 486 regulatory documents live
  • Release time cut from 90s to 23s

The challenge

Where we started.

The platform loaded, and that was about all anyone could say for it with confidence. The team that built it had moved on without a handover, so nothing described how the site was structured, deployed, or maintained, and the publishing mechanism itself was undocumented. Statutory documents were failing silently: an entire Downloads section of 21 regulatory filings was unopenable, producing no error page and no console warning, so the failure surfaced only when a person happened to click one. For a listed company an inaccessible disclosure is a compliance exposure, not a cosmetic bug. Around 166 production images were served from a CDN account whose credentials had left with the original team, with no backup and five assets already gone. Publishing itself took 30 to 60 seconds and would print a success banner even when the release had failed, so a broken deploy looked identical to a good one.

Our approach

What we built.

WitsCode treated this as an operations problem rather than a queue of tickets, on three principles.

Verify, never assume. Every claim that something is live is backed by a real check. Documents are opened and read before filing rather than trusted by filename, which is how one arriving as a board-meeting outcome turned out to be the quarterly results. Every referenced file path is validated against disk before release, and publishing is confirmed by fetching the live page from an independent network rather than our own.

Write down what we learn. Institutional memory belongs in the repository, not in one person's head. A running task log records every change with its commit and release, a developer runbook captures conventions, deploy mechanics, and every known trap, and a full handover document means the project can change hands without losing context.

Raise what does not add up. We publish exactly what is asked for and flag discrepancies rather than guessing. A regulatory pack contained the same circular twice under different names, confirmed by checksum. A tax pack shipped Form 15H twice with no Form 15G, which would have left shareholders under 60 with no form to download. Both were raised before publication rather than after.

The engineering work followed the same logic. Three client-reported defects all traced to one root cause, a download component that fails silently when handed the wrong props, so we fixed the instances and then documented the contract so it stops recurring. The orphaned image pipeline was resolved by removing the risk rather than the dependency: 161 of the 166 assets were recovered and backed up locally with a SHA-256 per file and two documented recovery routes, while the CDN itself was kept for its edge caching and modern image formats. That judgment paid off when a later request to change customer logos needed originals we could no longer download. The release pipeline was rebuilt from a per-file process loop into a single batched operation, taking an end-to-end release from roughly 90 seconds to 23, with genuine failure detection so a broken push now fails loudly.

Outcomes

What followed.

  • All 32 client requests delivered and live, a 100 percent completion rate, with 26 delivered the same day they were received
  • No missed statutory disclosure deadlines across the engagement
  • Four new sections built and launched: Integrated Finance, IEPF, MOA and AOA, and Important SEBI Circulars
  • A live library of 486 regulatory documents across 19 sections
  • 161 of 166 orphaned CDN assets recovered and backed up with per-file checksums and two recovery routes
  • Release time cut from roughly 90 seconds to 23, with real failure detection replacing a success banner that lied
  • Every client-reported defect root-caused and fixed the same day, then documented so the class of bug stops recurring
  • The platform documented end to end, so it can change hands without losing context

Stack

What we used.

  • React 18
  • Vite 6
  • React Router 7
  • Tailwind CSS
  • Python tooling
  • Playwright QA
  • Git two-branch deploy

Want to be the next case study? Let's talk.

Tell us what you're building. We'll reply within 24 hours with how we'd approach it.