Bingo Meetings- conclusion–part 25

Bingo

Bingo is a small project, written in TypeScript , and developed with Alexandru Badita in launch break (one hour - more or less). You can find sources at https://github.com/alexandru360/PresentationBingoCards/ . Those are my blog posts for Bingo : ( scroll below for the post)
NrLink
1Create meeting
2Create Tests
3Finalize Create meeting
4Sharing meeting
5Keep Score
6Add obsolete
7Finalizing obsolete
8End meeting
9Dockerize tests
10Azure CI tests
11Yarn workspaces
12CLI
13Intermezzo - CLI improvements
14typescript compile run with node
15NestJS ,swagger and create a meeting
16Finalizing API
17Intermezzo - jest vs jasmine error
18Refactor WebAPI and test service
19Heroku Deploy NestJs
20Angular
21Deploy Angular to GitHub
22WebAPI and Web
23Documentation
24Documentation of the code
25Conclusions

It was a nice journey  to make an application just with TypeScript and Node ecosystem.  There are some missing parts ( e.g. testing the GUI – e2e in JS parlance)

However, some thoughts:

  1. The ecosystem does not have good support for mono-repository (in C# parlance , solution with multiple referencing projects )
    • Yarn Workspaces helps
    • TypeScript compile should be configured
  2. The fact that you wrote once time the definitions is overrated
    • Still some different models for Web API and Console and Web should exists, if you are a purinst ( no swagger reference for console …)
    • The possibilities of mistake  because of the same  model are not trivial
  3. Some tools require better documentation
    1. Finding how in nest return an HTML file is …. gard
    2. The errors are not so self explanatory ( for example, referencing i n warn workspaces something without his references)
  4. Docker really helps to have repeatable builds
    1. CLI is your best friend –  programming and devops
    2. Docker copying results files are perfect
  5. In our days, to be a full cycle programmer is easy with open source and stacks for open source( GitHub, AzureDevOps, Heroku, others)