Separates the client ui from the backend server with individual package.json files.
I didn't want to add server hot reloading but HMR is used with vite.
Run the api server using:
pnpm start:server
In a different tab, run the client server using:
pnpm start:client