This project is a tool to plan your semesters at OST Rapperswil. The params in the URL will be updated automatically so you can save your data by copying the current URL.
See Example
Check the open issues to see what you can work on.
A Clerk publishable key is needed to run the project in combination with the backend. Copy the example.env file to .env and set the variable.
You don't have to set it up if you only want to run the frontend without the backend.
npm install
npm run dev
npm run build
npm run lint
npm run lint-fix
Since the tests cover authenticated behaviour with the backend, a Clerk publishable key as well as a secret key is needed to run the e2e tests. Copy the example.cypress.env.json to cypress.env.json and fill in the values.
npm run test:component:dev
npm run test:component
The dev server as well as the backend must be running to run the e2e tests.
npm run dev
npm run test:dev
npm run test
The pipeline is configured to set the CLERK_PUBLISHABLE_KEY environment variable which is stored inside a github secret. The token will be compiled into the docker container. If the publishable key has changed, a new image must be built. This is because the application is compiled into static files so there is no node server when running in production which could set the token dynamically.
As the name publishable key suggests, it is not a secret. It is only used to identify the application and to allow Clerk to serve the correct configuration. It is limited to the url configured for this application.