An open API service indexing awesome lists of open source software.

https://github.com/raboro/flower-meadow-generator

Full stack web app with Java Spring Boot backend, JS frontend and PostgreSQL as db together with docker compose to design flowers, overview them and generate a meadow with them
https://github.com/raboro/flower-meadow-generator

ci css docker dockercompose eslint html java js make nginx postgresql spring springboot stylelint

Last synced: 4 months ago
JSON representation

Full stack web app with Java Spring Boot backend, JS frontend and PostgreSQL as db together with docker compose to design flowers, overview them and generate a meadow with them

Awesome Lists containing this project

README

        

````bash
# ______ _ __ __ _
# | ____| | | \/ | | |
# | |__ | | _____ _____ _ __ | \ / | ___ __ _ __| | _____ __
# | __| | |/ _ \ \ /\ / / _ \ '__| | |\/| |/ _ \/ _` |/ _` |/ _ \ \ /\ / /
# | | | | (_) \ V V / __/ | | | | | __/ (_| | (_| | (_) \ V V /
# |_| |_|\___/ \_/\_/ \___|_| |_| |_|\___|\__,_|\__,_|\___/ \_/\_/
#
# _____ _
# / ____| | |
# | | __ ___ _ __ ___ _ __ __ _| |_ ___ _ __
# | | |_ |/ _ | '_ \ / _ | '__/ _` | __/ _ \| '__|
# | |__| | __| | | | __| | | (_| | || (_) | |
# \_____|\___|_| |_|\___|_| \__,_|\__\___/|_|
````

[![GNU GPL 3.0 License](https://img.shields.io/badge/license-MIT-brightgreen.svg)](https://github.com/Raboro/Flower-Meadow-Generator/blob/main/LICENSE)
[![Issues](https://img.shields.io/github/issues/Raboro/Flower-Meadow-Generator.svg)](https://github.com/Raboro/Flower-Meadow-Generator/issues)
[![GitHub commit activity](https://img.shields.io/github/commit-activity/y/Raboro/Flower-Meadow-Generator)](https://github.com/Raboro/Flower-Meadow-Generator)
[![GitHub last commit](https://img.shields.io/github/last-commit/Raboro/Flower-Meadow-Generator)](https://github.com/Raboro/Flower-Meadow-Generator)

[![Powered by](https://img.shields.io/badge/powered%20by%20java-orange.svg?logo=OpenJDK&logoColor=white)]()
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=bugs)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=coverage)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)
[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Backend&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Backend)

[![Powered by](https://img.shields.io/badge/powered%20by%20javascript-black.svg?logo=Javascript&logoColor=yellow)]()
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=bugs)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=coverage)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=ncloc)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Code Smells](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=code_smells)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)
[![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=raboro_Flower-Meadow-Generator_Frontend&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=raboro_Flower-Meadow-Generator_Frontend)

---
## Demo

https://github.com/Raboro/Flower-Meadow-Generator/assets/88288557/a997f6d2-b01f-4dc7-a218-3ac55df4f4e4

---
## Run the application

Just run the following command to start the three docker container: One for the Java Spring Boot backend one for the HTML, CSS, JS frontend and one for the PostgreSQL database:
````bash
$ docker compose up
````

Or you can use ``make`` to run / stop or restart the application:
````bash
$ make up
>
$ make down
>
$ make restart
>
````

Read more about all `make` commands [here](https://github.com/Raboro/Flower-Meadow-Generator/blob/main/documentation/makefile.md).

## Reach the application

After the starting process you can reach the container/services:

Get **frontend** in the browser (uses port ``8082``):
````
http://localhost:8082/flowermeadowgenerator
````

Make calls to the **backend** flower endpoint (uses port ``8081``):
````
http://localhost:8081/flower
````

Read more about all `endpoints` [here](https://github.com/Raboro/Flower-Meadow-Generator/blob/main/documentation/endpoints.md).

---

## Features

See a few of them in a [demo](https://github.com/Raboro/Flower-Meadow-Generator/blob/main/documentation/features.md).

- generate flowers
- flower value validation
- flower overview with flower design
- remove flowers
- search for name
- sort for:
- name
- category
- stem width
- stem height
- petal width
- petal height
- stem thrones
- petal thrones
- stem color
- petal color
- generate random meadow with flowers
- select how often a flower should be generated
- automaticlly sync database data with `database/data` folder to regain even after restart or stop