michael-simons / simple-meetup

16 stars 7 forks source link

= Simple Meetup

image:https://travis-ci.org/michael-simons/simple-meetup.svg?branch=master["Build Status", link="https://travis-ci.org/michael-simons/simple-meetup"]

A sample project to explore

based on a Spring Boot application.

== Domain

The application should provide a REST-API for managing events and registering for those events. Events must be unique by name on a given day. They can be open and close and have a number of seats available. The number of free seats must be computed by through the current number of registrations. A person can register exactly one time with a given email address.

== Build

You'll need Java 8 and Docker installed to build the project. Just run

./gradlew

or

./gradlew.bat

depending wether you're on a Unix-like- or Windows-Machine.

== Articles and posts

http://info.michael-simons.eu/2017/11/20/integration-testing-with-docker-compose-gradle-and-spring-boot/[Integration testing with Docker-Compose, Gradle and Spring Boot]:: Explains how to use Docker-Compose and a JUnit rule to provide environments for integration tests to a Spring Boot application https://michael-simons.github.io/simple-meetup/overriding-spring-managed-versions-in-gradle-projects[Overriding Spring managed versions in Gradle projects]:: A quick post explaining how to overwrite Spring Boot managed dependencies with Gradle https://michael-simons.github.io/simple-meetup/unwrapping-custom-jackson-serializer[Unwrapping custom Jackson Serializers]:: Combine custom JsonSerializers with @JsonUnwrapped

== Thanks

In no specific order to