The GC Digital Talent app is divided into multiple services, each treated as its own sub-project:
/api
, API service/apps
, frontend applications/packages
, npm packages used within /apps
/apps/playwright
, e2e testing with Playwright/tc-report
, static content, mostly the Talent Cloud report, generated with Jekyll/infrastructure
, support files for the docker infrastructure to run the project
/maintenance
, scripts which run inside the docker containers for setup and updatesThe api and frontend projects are both designed to run in separate containers. However, they can also be run on a single server with requests routed carefully between them. This is currently how the docker infrastructure works.
Each sub-project has its own README.md
, with advice on how to contribute to that sub-project. The README files also contain notes on how to configure the sub-projects, but if you simply want to get the project running on a new machine, you may disregard these notes and move straight to the steps below.
We do several types of testing: (internal documentation linked when available)
As much as possible, we aspire to make these runnable on:
We strongly recommend running the project entirely with Docker. In this case the only dependency you must install on your machine is Docker Desktop.
Then, follow the instructions in /maintenance/README.md
to build the project docker containers and run the build scripts. That should handle everything!
[!TIP] If using Docker Desktop, make sure virtualization is enabled in your machine's BIOS.