Skip to content

20230323-New-Majority-Web-area

Background

The website (majority.com) sometimes needs to access functionality in the backend. I.e. signup user and register referrals. Today there exists an old project, majoritycom-web-api, that is built in C# but owned by the web team. This old project is not built on the common base platform library used by other backend services, does not use the same patterns etc. Something needs to be done.

Decision

Web should communicate with backend through a web area, similar to Hydra and Sales tool.

Reasoning

Taking over the existing old c# project was not seen as possible, since its soo different from the rest of backend. It also contains lots of functionality that might be better to keep in the web team, to make sure the are not slowed down by backend.

Calling the existing (app) APIs could be done, but given the different functionality of web and apps, and importantly the different security considerations (web is more easily targeted by XSS and other issues) it was believed that it would only make a mess to mix it in there.

Finally, we do already have precedence by the Sales Tool and Hydra areas.

Consequences

  • A new MajorityWeb area should be created and owned by backend.
  • The existing majoritycom-web-api should not receive new functionality and be owned by the web team (with help if needed from backend)

Notes

Decided in Arch Forum meeting (https://dev.azure.com/MAJORITY/Documentation/_wiki/wikis/Main/176/Arch-Forum-2023-03-23)