10 Commits
Author SHA1 Message Date
MartinandMarco Pasqualetti d476f8cbe1 extract "core" package, small improvements (#137)
This PR mainly refactors the code by extracting a "core" package which
is then used by the "backend" and "frontend" apps.

Apart from this the PR also contains several smaller changes like fixing
dependabot, upgrading dependencies, aligned "package.json" files, added
tests, ...

addresses step 1 of #32 
closes #136

---------

Co-authored-by: Marco Pasqualetti <marco.pasqualetti@live.com>
2026-04-18 10:37:26 +02:00
Marco Pasqualetti 238ca1c97f test(backend): migrate to vitest (#95)
Use `vitest` for backend tests:

- `bench` script now uses [vitest's
`bench`](https://vitest.dev/api/#bench)
- e2e test fails with same error happening now with jest:`data-testid`
attribute not present.
  vitest left, jest right
<img width="1264" height="603" alt="image"
src="https://github.com/user-attachments/assets/56fc43a6-e143-4208-bf14-7e016aae7fa9"
/>
2026-02-22 16:02:46 +01:00
Martin 8a7642db54 upgrade pnpm, update knip config (#94)
After upgrading knip via dependabot it said that the "src/index.tsx"
entrypoint is redundant.
2026-02-21 17:14:29 +01:00
Martin 6e109e50d1 restructure tests, add tests, remove dotenv (#83)
- add a few tests
- re-organize tests to allow testing with different env vars and
creating a combined coverage report
- extract test data into separate files, because importing data from
testA in testB leads to weird jest errors
- remove `dotenv` because it's not being used
- "GitHub Trends" -> "GitHub Stats Extended"
2026-02-20 19:38:16 +01:00
Martin acf7b16ac9 reactivate some old workflows, remove some old workflows (#80)
I deleted most workflows from apps/backend/.github/workflows because imo
we don't need them in the near future. I updated and moved two workflows
which we do need. Only the codeQL workflow is left behind, because I
don't have an opinion yet whether it should be removed or kept.
2026-02-16 08:32:28 +01:00
Marco Pasqualetti 3fb7b37d75 refactor: add eslint-plugin-import-x (#65)
- related to #29
2026-02-09 09:15:46 +01:00
Marco Pasqualetti 24907643ac feat(frontend): convert to ts (#37)
* feat(frontend): convert to ts

* refactor(frontend): axios-override - simplify shouldMock type

* fix: refine stage labels

* refactor(frontend): refine `useUserId` signature

* fix(frontend): descriptionLines and langsCount can be undefined

* refactor(frontend): refine casting on redirectCode

* refactor(frontend): refine stageIndex title and types

* refactor(frontend): apply pr review comments changes

* refactor(frontend): group properties using reference groups

* refactor(frontend): remove outdated comment

* fix(frontend): mock-http - simplify code
2026-01-29 09:42:25 +01:00
Marco Pasqualetti 58e02dae29 feat: replace create-react-app with vite (#34)
* feat: replace `create-react-app` with `vite`

* fix: correct axios-override extension

* chore: add more extensions to lint-staged
2026-01-25 12:20:17 +01:00
Marco Pasqualetti 2871309af3 feat(frontend): enable knip (#31)
* feat(frontend): enable `knip`

* fix: remove stages barrel file
2026-01-24 15:30:39 +01:00
Marco Pasqualetti 90490046bb feat(backend): enable knip (#30) 2026-01-23 17:15:30 +01:00