Home - AlfredGranson/pcrm GitHub Wiki

Welcome to the pcrm wiki!

Important Concepts

pcrm is a devoper-conscious Phoenix-based customer relationship management system. Below are concepts that make pcrm work as a whole.

Resources

Resources are the entities that pcrm is centered around. Examples are customers, estimates and invoices. Resources have two components that are required in pcrm. The default frontend using phoenix's LiveView and the api portion (Coming soon!).

Locale

Localization is an important concept in pcrm. Any and all non user-generated text rendered to the screen is required to be translated using gettext. This will ensure that as pcrm grows to support more and more languages, the groundwork is ready to support it.

History

All changes to records within pcrm are subject to be recorded in a ledger. This is achieved by using the Paper Trail plugin.

Naming

Avoid bikeshedding! pcrm utilizes Schema.org for resource field naming. This is for the internal/api-facing field names. Field names redered to the UI can (and should) be translated to more common terminology.

Security

  • UUIDs are manditory for all resource ids.