Development and bring to the production:
--- SITE BUILDER based on drag'n'drop technology.
Imagine something like Wix+Powerpoint(or keynote) - this is what I did with Angular.
People can create sites, create pages in the site, add blocks to the page, configure blocks, configure SEO settings, create versions of pages, undo/redo changes, publish changes.
And everything should work fast in the browser. Smooth user interaction is a cornerstone.
--- SITE VIEWER. It is a web app the site visitors interact with.
The site owner creates sites in the builder. Others open a site on a site-specific domain like a normal website.
--- SERVER-SIDE RENDERING of all sites built in the builder.
I developed the backend that creates prerendered HTML files of every site after the site owner publishes changes or does some other actions. Then it stores HTMLs in the cloud and fetches them when needed.
--- MICRO-FRONTEND ARCHITECTURE to deliver rich and intuitive UI to B2B clients (site owners).
Since a company provides different services and a lot of UI required for this we designed the microservice architecture on the frontend.
We allow users to switch between different Angular applications inside one browser tab. And it looks like something solid for a user - like lazy modules in Angular app. But no... There are different applications with different hostings and deploy processes.
--- APIs based on NestJS (NodeJS, MongoDB)
I developed REST APIs for the applications using this NodeJS framework.
And developed RabbitMQ consumers with NodeJS as well e.g. for server-side rendering.