Skip to content
Masanori Ohgita edited this page May 8, 2022 · 17 revisions

Files

In this page, only the files specific to this project will be explained with comment.

Other files were just scaffolded by Angular CLI (@angular/cli) and Nest CLI (@nestjs/cli).

  • .github/
    • workflows/ -- Workflows of GitHub Actions
  • .utils/
    • api-client-generator-launcher.js -- Glue between ng-openapi-gen and NestJS
  • client/ - Frontend application (Angular)
    • app/
      • app.component.* -- Implemented a simple example using the API client.
      • app.module.ts -- Modified this file to load the API Client that generated by ng-openapi-gen.
    • .proxy.conf.json. -- Proxy for backend in development environment (learn more)
    • karma.conf.js -- Added the karma-junit-reporter plugin for Karma. It generates the test reports for CI (GitHub Actions).
    • package.json -- Added the npm run start:dev command to match the command structure of the NestJS application. Also added the npm run test:ci command to execute the tests with generation of the test reports with using karma-junit-reporter (learn more).
    • Other files were just scaffolded by Angular CLI (@angular/cli).
  • server/ - Backend application (NestJS)
    • main.ts -- Modified this file to set the backend API endpoint to /api, and also publish the API documentation in /api/docs.
    • material.module.ts -- Import all modules to make working with Angular Material easier. However, you can also reduce this file and import each module individually.
    • openapi-doc-generator.ts -- Glue between ng-openapi-gen and NestJS
    • package.json -- Added the npm run test:ci command to execute the tests with generation of the test reports with using jest-junit reporter (learn more).
    • Other files were just scaffolded by Nest CLI (@nestjs/cli).
  • .dockerignore -- Definition of files excluded in Docker builds. This file is only used when deploying (as production) with Docker.
  • .editorconfig -- Configuration of EditorConfig. This file was generated by Nest CLI, and I moved it to apply EditorConfig to the entire project.
  • .gitignore
  • .prettierrc -- Configuration of Prettier (Formatter). This file was generated by Nest CLI, and I moved it to apply Prettier to the entire project.
  • app.json -- Manifest file for Heroku. This file is only used when deploying (as production) with Heroku.
  • Dockerfile -- Definition to building Docker image. This file is only used when deploying (as production) with Docker.
  • heroku.yml -- Manifest file for Heroku. This file is only used when deploying (as production) with Heroku.
  • LICENSE
  • package-lock.json
  • package.json -- Manifest file. There is a Monorepo definition with using npm Workspaces, and an overall command definition.
  • README.md
  • render.yaml -- Manifest file for Render. This file is only used when deploying (as production) with Render.
Clone this wiki locally