phenix-vcc
Standalone Angular 14 Nx workspace containing the original Phenix virtual-credit-card (VCC) UI for viewing and reconciling VCC transactions, since duplicated into the phenix-ui monorepo.
Health score
0 to 100 across seven weighted factors; nothing is hidden. Green is 75 and above, amber 50 to 74, red below 50. How scoring works.
Facts
| Languages | typescript |
| Frameworks | Angular 14, Nx 14, NgRx 14, Jest 28 |
| Runtimes | nodejs |
| Tests / CI | some / CI in place |
| Last commit | 2023-05-19 |
| Owner | Owner unknown (mapping to be curated) |
| Domain | Payments and finance (system generated; curate in repo-owners.json to override) |
| Product area | Phenix |
| Hosted | On-prem Deployed to our own machines
|
| Releases | 3 release pipeline(s): \finance\vcc\phenix-vcc Dev; \finance\vcc\phenix-vcc Release; \finance\vcc\phenix-vcc Stealth |
| Integration | rest |
| Source | Open in Azure DevOps |
Risk flags
Each flag links to its glossary definition.
Dependencies in context
Entanglement
loose No binding mechanisms apply: this system needs no untangling work.
Depends on / used by
Capability duplication
Part of the Virtual credit cards family (retire): Angular app duplicated inside the phenix-ui monorepo; dormant since 2023
Migration playbooks
Generated from this repo's assessment data: what is feasible, what blocks it, and the steps in order. Ratings: green means actionable now, amber means sequence other work first, red means blocked, grey means not applicable.
ZDD adoption
Not applicableNot a deployed service (libraries, database definitions, desktop apps) or a retirement candidate not worth the investment. Retirement or consolidation candidate; do not invest in ZDD adoption.
SQL Server exit
Not applicableNo SQL Server dependency is recorded for this repo. Nothing to migrate.
Containerisation
Retire insteadThis repo is a retirement or consolidation candidate; containerising it would be investment in something we intend to switch off.
Recommended actions
Retire phenix-vcc
Angular app duplicated inside the phenix-ui monorepo; dormant since 2023. Part of the Virtual credit cards consolidation: Route all eNett calls through vccprovider-enett, retire the duplicated phenix-vcc app, and route the providers' direct database writes through an API owned by vcc-service (stage 4).
Impact: A pipeline decommissioned and an attack surface removed
proposedAssessment notes
phenix-vcc
Purpose
The original home of the Phenix VCC (virtual credit card) front end: an Nx workspace (rooted at phenix/) with one Angular app, phenix-vcc, plus vcc-models, vcc-api, phenix-vcc-components and phenix-vcc-pages libraries. The app covers VCC transaction views including pending-reconciliation pages. A phenix-vcc app and phenix-vcc-* libraries also now exist in the phenix-ui monorepo, which appears to be where active development moved.
Tech stack
TypeScript Angular 14 with Nx 14, NgRx 14, Jest 28 unit tests and a Cypress e2e project; Node 16 build. Internal npm packages @tc-angular/* (navigation, google-analytics, announcekit, user-service, utils) and @tc/web-icons / @tc/web-styles.
Deployment
Included as prod_application with 3 releases: \finance\vcc\phenix-vcc Dev, Release and Stealth, from the phenix-vcc build pipeline. YAML CI (phenix/azure-pipeline.yml) using the shared build-angular.yml template. Output is a static Angular bundle deployed into the IIS-hosted Phenix site.
Dependencies
Runtime: calls the estate VCC backend over REST at api/virtual-credit-card (vcc-service). External SaaS: Google Analytics and AnnounceKit via the @tc-angular wrappers.
Data stores
None — pure front end; all VCC data lives behind vcc-service.
Integration points
Outbound REST to the VCC API; served inside the Phenix shell.
Code health
53 Jest spec files, so reasonable unit coverage for its size, and CI exists. But the repo is dormant (last commit 2023-05-19), the README is unmodified Nx boilerplate (a constructionlog.txt documents its scaffolding), and Angular 14 / Node 16 are both end-of-life.
Modernisation risks
The stack is EOL (Angular 14, Node 16) and the repo has been untouched for over three years while its release pipelines remain live. The same app exists in the phenix-ui monorepo (which also feeds \finance\phenix\phenix-vcc-MonoRepo and tc-vcc-MonoRepo releases), so the priority action is to confirm which deployment is authoritative and retire this repo rather than upgrade it.