9. Interim Conclusion
The twenty examples have introduced the concepts we need to write the [RdvMedecins] client:
Concept | Where it will be used in the case study |
components, props, [v-model], slots | the navigation bar, form fields, windows |
[ref], [reactive], [computed], [watch] | all pages; the calendar that follows its URL |
composables | the confirmation window, formatting, and form errors |
the router and its guards | the pages, the permissions for each role, the session to be restored after F5 |
Pinia | the logged-in user, success and error messages |
[vue-i18n] | French and English, and the translation of server errors |
fetch, httpOnly cookie, proxy | the connection and all communication with the server |
the API access layer | a [rdvmedecins.api.ts] file, one function per route |
The client will be the exact equivalent of the HTML application from the [NestJS] course, page by page. The difference lies elsewhere: the server no longer generates any pages; it responds in JSON, and everything related to display (pages, language, date formatting, messages) has been moved to the browser.