Skip to content

About

nicegui based Customer Relation Management tool

Resources

Stars

4 stars

Watchers

1 watching

Forks

Repository files navigation

niceSmartCRM

nicegui based Customer Relation Management tool

pypi Github Actions Build PyPI Status GitHub issues GitHub closed issues API Docs License

Migration 2026

niceSmartCRM replaces the legacy Java/Jersey/JPA smartCRM system. Both systems share the same MariaDB smartcrm database during the transition; an anti-corruption layer translates the German database schema to the English Python domain model. The database schema is only migrated to English naming once the Java system is decommissioned.

fields.yaml

crm/resources/fields.yaml is the single declarative source of that translation: one record per field, keyed by entity and English field name, carrying the legacy column, the json spelling of the JAXB export where it differs, the type, pk, reference and the en/de labels. crm/fields.py reads it and serves

  • the from_smartcrm() conversion of the dataclasses in crm/crm_core.py
  • the i18n labels of the UI (there is no separate translation file)
  • the graph schema of the UI: icon, key field and display order of every node type (there is no separate schema file)
  • the DDL of English views over the untouched German tables: smartcrm --views
  Person:
    _: {en: Person, de: Person, plural: persons, table: person, icon: person}
    person_number: {en: Person Number, de: Personennummer, column: PersonNummer, pk: true}
    first_name: {en: First Name, de: Vorname, column: Vorname}
    organization_number: {en: Organization Number, de: Organisation, column: meineOrganisation_OrganisationNummer, reference: Organization}

de is a label and column is the physical name; the two are distinct. See issue #6.

Legacy model (German — Java/JPA/MariaDB)

smartCRM legacy model

Target model (English — Python dataclasses)

niceSmartCRM domain model

PlantUML sources: docs/legacy_model.puml · docs/english_model.puml

About

nicegui based Customer Relation Management tool

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages