Skip to content

osrsGoalsTracker/userService

Repository files navigation

User Service

A Java service for managing users in the OSRS Goals Tracker system.

Overview

This service provides AWS Lambda functions for managing users. It follows a Layered Service Architecture (LSA) pattern and is built with Java 21.

Documentation

Requirements

  • JDK 21
  • Gradle 8.x

Quick Start

  1. Install dependencies:
./gradlew build
  1. Run tests:
./gradlew test
  1. Build all Lambda handlers:
./gradlew buildAllHandlers

Building Individual Handlers

Build specific Lambda handlers:

# Build GetUser handler
./gradlew getUserLambda

# Build CreateUser handler
./gradlew createUserLambda

Each handler will be built into its own JAR file in build/libs/.

Dependencies

  • AWS Lambda Core - Lambda function support
  • AWS Lambda Events - Event handling
  • AWS DynamoDB - Database operations
  • Google Guice - Dependency injection
  • Jackson - JSON serialization
  • Log4j2 - Logging
  • Lombok - Boilerplate reduction
  • JUnit 5 - Testing
  • Mockito - Mocking for tests

Infrastructure

The service is deployed using AWS CDK with the following components:

  • API Gateway for REST endpoints
  • Lambda functions for business logic
  • DynamoDB tables for data storage

About

User related service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published