Skip to content

macintorsten/reflection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reflection

CI

A Java Spring Boot REST API project with PostgreSQL backend, demonstrating:

  • Spring Boot with Java 21
  • JPA/Hibernate with PostgreSQL
  • Testcontainers for integration testing
  • OpenAPI/Swagger documentation
  • GitHub Actions CI/CD
  • Static API documentation on GitHub Pages

Building and Testing

Prerequisites

  • Java 21
  • Maven 3.x
  • Docker

Quick Start

# Build the project
mvn clean compile

# Run tests (uses Testcontainers - no manual database setup needed)
mvn test

# Run the application (requires database)
docker compose up -d
mvn spring-boot:run

The application will be available at http://localhost:8080

Test Results

View test results in:

  • 🔍 GitHub Actions - CI Runs with line-level annotations on failures
  • 📊 Local Coverage - Run mvn verify then open target/site/jacoco/index.html

API Documentation

Deploy API Documentation

Static API documentation is available at: https://macintorsten.github.io/reflection/

The documentation is automatically generated and deployed:

  • OpenAPI spec is extracted from the running application during GitHub Pages deployment
  • No manual updates needed - documentation stays in sync with code changes
  • "Try it out" functionality is disabled since there's no running server backend

CI/CD

The project uses GitHub Actions for continuous integration:

  • ✅ Runs on every push to main and all pull requests
  • ✅ Executes full test suite (115+ tests) with Testcontainers and Playwright
  • ✅ Uses mikepenz/action-junit-report for test reporting
  • ✅ Uploads test artifacts and screenshots on failures
  • ✅ Generates code coverage reports with JaCoCo

See .github/workflows/ci.yml for the complete configuration.

GitHub Copilot Instructions

This repository includes comprehensive instructions for GitHub Copilot to provide better assistance with:

  • Building and testing the application
  • Understanding project architecture
  • Following coding standards

The instructions are located in .github/copilot-instructions.md and .github/instructions/.

For more details, see .github/copilot-instructions.md.

About

OpenAPI documentation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors