Digital Centre description coming soon!!!
This project uses Next.js and Tailwind CSS for the front-end and Jest/Cypress for unit testing and end-to-end testing. In addition, TeamCity is used for our CI/CD pipelines and deployments. Husky is used in correlation with prettier to format the code on pre-commit, increasing code readability.
After cloning the repository, follow the (Proxy Configuration)[https://github.com/DTS-STN/sc-digital-centre/wiki/Proxy-Configuration] guide, then run the development server:
npm i
npm run proxystart
npm run dev
Open http://localhost:3000 with your browser to see the result.
Digital Centre is configured with TeamCity in a Configuration As Code approach. This allows developers to modify TeamCity configurations from the code, located in the .teamcity/settings.kts
.
In order to set this up, in TeamCity, the VCS Root needs to be configured with the SSH repository key. Next, authentication needs to be configured from TeamCity to allow commits to the project. Inside of the VCS Root settings, under Authentication Settings, an Uploaded Key must be added. It is important to point out that a simple username/password will not work as stated by a GitHub Blog starting August 13th, 2021.
For every Kubernetes cluster, a context.sh file needs to be defined. For example, one might be called context-dev.sh and the other context-prod.sh.
For more information, please visit the DTS SRE deployment templates.
We need to have at least one person reviewing each PR before it can be merged. Also, each feature branch should be prefixed by the relevant ADO issue, if possible e.g. 66013-comprehensive-readme. The desciption should be kept very short, so that the dynamic build works.
Follow the Branching Strategy when creating your PR
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!