Copilot was primarily used to finish off lines of code, which more often than not ended up being checked over and altered by us anyway. It was not used to generate entire files or even entire functions.
We have the following estimates for Copilot usage:
Backend
src/routes/*
15% generated by Copilot, primarily the use of TypeORM repository accessor functionssrc/db/*
10% generated by Copilot, primarily type completionssrc/index.ts
no use of Copilotsrc/types.ts
no use of Copilot
Frontend
Note: some of the files in the frontend were taken from a Tailwind UI Template. These files are marked with a comment at the top of each and whether they were also modified by us or not.
src/api/*
5% generated by Copilot, most of this was handwritten in one file then copy-pasted for the restsrc/app/*
15% generated by Copilot, primarily tailwind class names or basic if else completionssrc/components/*
10% generated by Copilot, primarily tailwind class names or basic if else completionssrc/lib/*
no use of Copilotsrc/types.ts
no use of Copilot
Testing
integration_tests/base.py
15% generated by Copilot, primarily used for general setupintegration_tests/backend/*
15% generated by Copilot, primarily used for general test structure that was manually filled in for each test caseintegration_tests/frontend/*
<5% generated by Copilot, these tests were mostly done by using the Playwright test tool instead of writing code with Copilotavailabilty_tests/*
no use of Copilot
ChatGPT was primarily used for basic research into library configurations and other basic information. It was also used to generate the mock database data in backend/src/db/mockData.sql
.