All work

since 2016

Datapot CRM
A CRM That Fits the Business

The client ran their entire customer management from one huge spreadsheet. I replaced it with a CRM that follows their exact workflow, and I have maintained and extended it for more than nine years.

Role
Architect & Full-Stack Developer
Duration
6-month build, 9+ years of maintenance and expansion
Stack
Angular, Node.js, Express, SQLite, Prisma, TypeScript, IndexedDB

The Starting Point:
A Whole Business in One Spreadsheet

All customer management ran from a single, massive spreadsheet. That was slow, and it was dangerous: typos, deleted rows, conflicting versions. Off-the-shelf software did not fit the company’s processes, so everything stayed manual. And manual cost hours every week.

The client needed one reliable source of truth. A tool that works for them, not against them.

My Approach:
Model the Business, Don’t Sell a Product

The system had to mirror the client’s processes one to one. So I went through every step with the people involved and noted where things got stuck. Only then did I design the architecture.

A Backend Built to Last

  • Node.js and Express as a light, proven foundation for the server.
  • SQLite as the database: simple, portable, nothing to operate. Prisma as the ORM brings type safety and a clear API. That speeds up development and prevents mistakes when talking to the database.

An Interface That Responds Instantly

  • The entire UI is built with Angular and TypeScript: maintainable and clear even with many features.
  • All required data is mirrored into an IndexedDB cache in the browser. Most actions happen locally, without waiting for the server. The interface feels like a desktop application.

From Data Entry to Automation

On that foundation, I built features that take over recurring work:

  • Holiday Cards at the Push of a Button A custom module manages the annual card list. It saves the team a week of manual work every year.

  • Office 365 Sync All CRM data is synced into the Office 365 accounts. Contacts are always current in Outlook and on the phone. No more data silos.

The Result:
A Tool That Changed the Daily Routine

The CRM replaced the spreadsheet completely. Duplicate work is gone, marketing tasks run automatically, and the data is wherever the team needs it. After more than nine years it is still in daily use and still growing.

What this project shows about how I work:

  • I build data-heavy applications from the ground up.
  • I implement a robust backend with Node.js, Express and Prisma.
  • I design browser-side caching so a web app feels like a local program.
  • I integrate custom software with Microsoft 365.