I am a retired software engineer, and this was my project in COVID lockdown to keep my brain active and keep me up to date with modern developments. I think the result is pretty neat. I just turned 80. Don't bank on me for long-term support - but I have no plans to check out any time soon. I hope this is useful to maybe give you ideas, or to use in NOSQL familiarisation or just steal the code.. If anyone wants to work on this with a view to taking it on and getting it in production, please contact me - firstname.lastname@example.org.
At first I thought I had to use a big framework and settled on Sails. Thus the name (System for Updating a Database using Sails), and suds is another name for the foam that you see on the sea. (The Sails logo is a yacht, so it all comes together.) There is an old communications prototcol called SOAP which has spawned a Python system called SUDS (naturally) so I couldn't use that - thus SUDSjs.
Why this technology?
Sails is a big system, but in the end I dropped it. It was too prescriptive about how the model was defined, and I needed to add a bunch of stuff. It also came with a big processing overhead. I reverted to using Express, which is the core software behind several frameworks.
The test data
The test data which downloads with the software exercises all the major functions. It is based on what you might find in a typical marketing organisation, but it is not production level. It's just test data. So don't come back with "the contact manager is not as good as Salesforce". I know it isn't.
So please take a tour round the system. Send me an email at email@example.com if you find a way of breaking it. .