Skip to content

12. Conclusion

We wrote the client [Angular] for the application [RdvMedecins]. For the user, it provides the same pages as the HTML application from the [NestJS] course, and as the [Vue.js] client from the previous course; for the developer, everything has shifted:

  • the server no longer generates pages. It exposes a API JSON, whose contract (routes, body, codes, and error keys) was sufficient to write the client without ever reading its code. The server is, in fact, exactly the same as the one used by the [Vue.js] client: only its comments have changed;
  • the pages, language, formatting, messages, and navigation have shifted to the browser;
  • security, however, has not changed: it is still the server that authenticates (cookie [HttpOnly]), verifies roles and management rules, and decides what a patient is allowed to see. The client simply displays what the server sends it.

Readers who have followed both courses can compare the two frameworks on the same application. [Angular] requires more code and concepts (classes, decorators, dependency injection, observables), but it provides everything: a router, forms, the HTTP client, interceptors, and build tools—along with recommended best practices for using them. [Angular] applications therefore all look alike, which is valuable for large teams and long-term projects. [Vue.js] is lighter and more flexible. With signals, the two frameworks have actually become more similar: [signal], [computed], and [effect] from [Angular] mirror [ref], [computed], and [watchEffect] from [Vue.js].

The concepts covered in this course (components, signals, signal forms, dependency injection, router, HTTP client) are those found in any modern [Angular] application. For further reading:

  • the official documentation, https://angular.dev, and its interactive tutorial;
  • the tests: [Vitest], provided by default by [Angular CLI] for unit tests of components and services, and [Playwright] for end-to-end tests (the screenshots in this document were taken using this tool);
  • server-side rendering ([Angular SSR], command [ng add @angular/ssr]), which generates the first page on the server: this would partially mirror the architecture of the course [NestJS];
  • the course “An Example of an Angular/NestJS Client/Server” (2026), which examines both a client ([Angular]) and its server.