Requirements
WHAT: There are thousands CRM systems on the market. Is a good idea to make another one?
WHY: Let me introduce you unique concept with organizing objects to hierarchy graph. Other CRM systems are overcomplicated with a lot of functions.
WHO: Any user who wants to organize his contacts in hierarchy with relation types between them. For example a freelancer, who works for more companies at once. And he need to fastly see a structure of his contacts.
Features to USE CASE:
User can:
- -> browse contact hierarchy diagram
- -> add new object
- -> edit/delete object
- -> search objects
- -> add link between objects
- -> edit/delete link between objects
- -> upload file to object
- -> choose/browse data views
- -> process data pipelines over data views
- -> import data (csv, Excel sheets)
- -> export data
Admin can:
- -> define data views (by scripting in Python language)
- -> invite/remove another user to/from group
Superadmin can:
-> define custom object fields
So, there are three types of users to interact with CRM system. Basic User, Admin and Superadmin. Application should be selfhosted easily.
/Database/ <-> /CRM Server/ <-> /WEB browser/
Database should be some Graph database. CRM Server as Java Enterprise with bundled Jetty server. ReactJS on frontend.