/TodoBackendApp

Primary LanguageJavaMIT LicenseMIT

TodoBackendApp

TodoBackendApp is a Spring Boot application that serves as a backend for a simple Task application. It utilizes the Spring Boot Starter Parent with a version of 3.2.0 and is configured to work with Spring Boot 2.5.0.

Table of Contents

Introduction

The project is structured as a Maven project and incorporates the Spring Boot framework. It provides a RESTful API for managing Task items using reactive programming with Spring WebFlux and R2DBC.

Prerequisites

Before running the TodoBackendApp, ensure that you have the following prerequisites installed:

  • Java 17
  • Maven

Installation

  1. Clone the repository:

    git clone https://github.com/dasosjt/TodoBackendApp.git
  2. Navigate to the project directory:

    cd TodoBackendApp
  3. Build the project using Maven:

    mvn clean install

Usage

To run the TodoBackendApp, use the following Maven command:

mvn spring-boot:run

The application will start, and you can access the Task API at http://localhost:8080/api/v1/task/.

Postman

Here it is a link for the Postman Collection

curl -X GET -H "Content-Type: application/json" -o TodoBackendAppCollection.json https://api.postman.com/collections/5351409-b968821a-576d-4686-a451-83b747a6aeb1?access_key=PMAT-01HGVR31TEQFYVVGHK5T1S4DQY

Dependencies

  • Spring Boot Starter Data R2DBC: Provides the necessary dependencies for R2DBC (Reactive Relational Database Connectivity).
  • Spring Boot Starter WebFlux: Starter for building web applications using Spring WebFlux.
  • H2 Database: An in-memory database used during development and testing.
  • R2DBC H2: R2DBC driver for H2 database.
  • Spring Boot Configuration Processor: Helps with the generation of configuration metadata files.
  • Project Lombok: A library to simplify Java code by providing annotations for common tasks.
  • Spring Boot Starter Test: Starter for testing Spring Boot applications.
  • Reactor Test: Testing support for Reactor, which is used in the reactive components of the application.

Building the Project

The project uses the Spring Boot Maven plugin for building. You can build the project using the following command:

mvn clean install

Testing

The project includes unit tests for various components. Run the tests using:

mvn test

Contributing

If you'd like to contribute to this project, please follow the Contribution Guidelines.

License

This project is licensed under the MIT License.