Spexregister Web is the second generation of the frontend responsible for serving data related to Spexregister.
- Framework: Next.js 16 (App Router)
- **UI & Styling: ** shadcn/ui, Radix UI & Tailwind CSS 4
- Data Fetching: urql (GraphQL) & Axios ( REST)
- State Management: React Hook Form & Zod for validation
- Authentication: NextAuth.js (Keycloak integration)
- Internationalization: next-intl (Supports English & Swedish)
- Node.js 24+
- npm (package manager)
- Docker & Docker Compose (optional, for containerized setup)
-
Install dependencies:
npm install
-
Configure environment: Create a
.env.localfile based on your environment requirements (API endpoints, Auth secrets). -
Generate GraphQL types: If you change GraphQL queries or the schema, regenerate types:
npm run gql-codegen
-
Run the development server:
npm run dev
Open http://localhost:3000 with your browser to see the result.
The project includes a Dockerfile and docker-compose.yaml for containerized deployment, including a Caddy reverse
proxy setup for local development with HTTPS.
To start the application along with the Caddy reverse proxy:
docker-compose up --buildThe application will be accessible via the configured hostnames (e.g., https://register.fgv.local.nu if your hosts
file is configured).
To create an optimized production build manually:
npm run build
npm run startContributors to this project agree to uphold its code of conduct.
You can contribute to Spexregister Web by:
- Opening a pull request. Please see the contributor guidelines for details
Spexregister Web is open source software released under the Apache 2.0 license.