- Introduce user authentication with form-based login, including a default admin user. - Implement UserEntity, UserRepository, and UserService for user management. - Create RESTful endpoints for user listing and creation, restricted to admin role. - Enhance OpenAPI specification to document new authentication and user management endpoints. - Add frontend components for login and user management, including protected routes. - Implement context and hooks for managing authentication state in the React application. - Include unit tests for user service and authentication logic.
RolePlay
Minimal Quarkus (Java 21) project scaffold for the RolePlay service.
Structure
src/main/java/de/neitzel/roleplay: startup and base packagesrc/main/java/de/neitzel/roleplay/business: business logicsrc/main/java/de/neitzel/roleplay/common: shared utilitiessrc/main/java/de/neitzel/roleplay/data: data accesssrc/main/java/de/neitzel/roleplay/fascade: external facadessrc/main/resources/db/migration: Liquibase changelog location
Login
The app requires authentication. A default admin user is seeded on first run:
- Username:
admin - Password:
changeme
Change the password after first login (e.g. by creating a new admin user and retiring the default, or via a future password-change feature). Only users with the admin role can create new users (POST /api/v1/admin/users).
Build and test
mvn test
Description
Languages
Java
58.3%
TypeScript
30.9%
Mustache
10.6%
HTML
0.2%