Multipurpose tables for CRM, project management or to-do lists

Ilya Nevolin
2 min readFeb 6, 2021

Most of you know CRM by the many advanced tools out there such as Salesforce, Capterra and Hubspot. But millions of small companies still use Excel/Word/Files/Directories to manage their accounts, invoices and projects. I have met very few individual contractors who use productivity tools/apps, even simple things like notepad apps to record customer requests and issues. Even fewer apply basic CRM practices to stay in touch with their customers, such as keeping their contact details and/or sending out promotional emails.

I understand that for many businesses it may seem like a lot of overhead with little or no immediate value. But some of these do wish to grow and expand their operations, thus seek low-cost solutions.


Since I started the PyCRM project I have been thinking of very simple yet effective ways of doing CRM. Since every business is different, everyone wants a slightly different interface, customization is key.

I remembered that there are many Javascript libraries that provide customizable tables/forms. In addition many of these use very simple data structures which can easily be serialized as JSON and stored as a file without using a complex (No)SQL database.

In the latest addition to our PyCRM project, we can use the JS Tabulator library which provides this functionality. You can easily customize the columns, fields and hundreds of other features.

Since it’s a SaaS page, it works pretty well on mobile devices. You can use it anywhere as long as you have an internet connection. The save button saves any changes on the server.

Final notes

This is a very basic implementation, so be very careful when it is used by multiple people at once. When multiple people save then only ones’ version will be stored, the other changes will be overridden and lost.

An improved implementation would be to commit individual fields instead of the entire dataset. But also keep any changes automatically synced over all active users. Once again this isn’t difficult to implement but depends on whether you need it or not.

Apart from using this as a CRM, you can turn this into a simple project management tool, or a to-do list or a sales tracking tool, etc. Enjoy!