Frontend for admin GUI in the ROR project.
- 🔒 TypeScript by default
- 📖 Next.js
- 🎨 Styling (To be decided)
Copy the .env.example
file to .env.local
and fill in the necessary values.
/// .env.local
AUTH_SECRET=
AUTH_ISSUER=
AUTH_CLIENT_ID=
AUTH_CLIENT_SECRET=
AUTH_TRUST_HOST=true
NEXT_PUBLIC_ROR_API_URL=
NEXT_PUBLICK_MOCKING_ENABLED=false
Note: Environmental variables will be validated running runtime and mapped to a different naming convention. See /env.ts
for implementation details.
To generate a secret for AUTH_SECRET
you can run the following command:
openssl rand -base64 32
The secret is used for session management by the next-auth
library.
Install the dependencies:
npm install
Start the development server with HMR:
npm run dev
Your application will be available at http://localhost:11000
.
The web application uses mswjs to mock API requests. To enable mocking, set NEXT_PUBLICK_MOCKING_ENABLED
to true
in the appropriate environment file.
Further configuration and which requests that are mocked can be found in /apps/web/__mocks__/handlers.ts
.
Create a production build:
npm run build
The web application is instrumented with Open Telemetry to collect telemetry data. See apps/web/instrumentation.ts
for implementation and Next.js Open Telemetry Documentation.
It is possible to configure custom spans, see Next.js Custom Spans for more information.