Ecosyste.ms: Awesome

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

https://github.com/mmahmoodictbd/production-ready-microservices-starter

Production Ready Microservices Starter gonna give you basic microservices which are common in all businesses. Best thing is - all microservices are multitenant.
https://github.com/mmahmoodictbd/production-ready-microservices-starter

java microservices multi-tenant ready-made-microservice spring-boot spring-cloud

Last synced: about 1 month ago
JSON representation

Production Ready Microservices Starter gonna give you basic microservices which are common in all businesses. Best thing is - all microservices are multitenant.

Lists

README

        

# Production Ready Microservices Starter

Build your business microservices with _Production Ready Microservices Starter_.

image:https://travis-ci.org/mmahmoodictbd/production-ready-microservices-starter.svg?branch=master["Build Status",
link="https://travis-ci.org/mmahmoodictbd/production-ready-microservices-starter"]
image:https://ci.appveyor.com/api/projects/status/l86attc8u56jgv0r?svg=true["Appveyor Status", link="https://ci.appveyor.com/project/mmahmoodictbd/production-ready-microservices-starter"]
image:https://codecov.io/gh/mmahmoodictbd/production-ready-microservices-starter/branch/master/graph/badge.svg["Code Coverage", link="https://codecov.io/gh/mmahmoodictbd/production-ready-microservices-starter"]
image:https://img.shields.io/github/license/mmahmoodictbd/production-ready-microservices-starter.svg["LICENSE", link="https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/LICENSE"]

image:https://sonarcloud.io/api/project_badges/measure?project=mmahmoodictbd_production-ready-microservices-starter&metric=alert_status["Quality
Gate", link="https://sonarcloud.io/dashboard?id=mmahmoodictbd_production-ready-microservices-starter"]
image:https://sonarcloud.io/api/project_badges/measure?project=mmahmoodictbd_production-ready-microservices-starter&metric=bugs["Bugs",
link="https://sonarcloud.io/dashboard?id=mmahmoodictbd_production-ready-microservices-starter"]
image:https://sonarcloud.io/api/project_badges/measure?project=mmahmoodictbd_production-ready-microservices-starter&metric=code_smells["Code
smells", link="https://sonarcloud.io/dashboard?id=mmahmoodictbd_production-ready-microservices-starter"]
image:https://sonarcloud.io/api/project_badges/measure?project=mmahmoodictbd_production-ready-microservices-starter&metric=security_rating["Security rating", link="https://sonarcloud.io/dashboard?id=mmahmoodictbd_production-ready-microservices-starter"]
image:https://sonarcloud.io/api/project_badges/measure?project=mmahmoodictbd_production-ready-microservices-starter&metric=sqale_rating["Maintainability", link="https://sonarcloud.io/dashboard?id=mmahmoodictbd_production-ready-microservices-starter"]

### Motivation

* Every time I want to build some application, I need to copy features / APIs from older application.
* Exposed as APIs, no more repeat feature.
* Easy to update dependency versions and fix bugs.

### Key Features

* REST APIs.
* Single schema multi-tenancy.
* Spring stack.
* Followed micoservice best practices.

### Basic microservices includes -

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/service-registry/README.asciidoc[Discovery Service] aka service registry

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/gateway/README.asciidoc[Gateway / Edge Service]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/uaa/README.asciidoc[User Accounts and
Authentication Service (UAA)] (Work in progress)
- Manage users with tenant and org concept.
- JWT Authentication.

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/notification-service/README.asciidoc[Notification Service] (Work in progress)
- HTML
- Email
- SMS
- Push
- Mobile push notification with Firebase.

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/file-storage-service/README.asciidoc[File Storage Service] (Work in progress)
- Store files and serve.
- Store public and private files.
- Access files with share-only link.

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/contact-service/README.asciidoc[Contact Service] (Work in progress)
- Generic contacts feature.
- Share contacts within the company (Org).

* Localization Service (Coming soon)
- UI labels and messages in preferred language.

* Audit Service (Coming soon)
- Log important changes.

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/blog-service/README.asciidoc[Blog Service] (Work in progress)
- Create, fetch and list post.
- Manage site info.

* Messaging / Chat Service (Coming soon)
- Chat between users of the system.
- Social media chat integration.

* Approve Service (Coming soon)
- Manage processes with multi level approval.

* UI Menu Service (Coming soon)
- Build menu items based on user access permission.

### Quick Deploy
```
mkdir production-ready-microservices-starter && cd $_
bash <(curl -sSL https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/master/init.sh)
```

### Technologies

`Java 8`, `Spring Boot`, `Spring Cloud`, `Spring Data JPA`, `REST APIs`, `Maven`, `Liquibase`, `Kubernetes`

### Documentations

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/documentation/how-to-run-local-machine.asciidoc[How to run in local machine]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/documentation/how-to-run-docker.asciidoc[How to run in Docker / Docker Compose]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/documentation/how-to-run-tests.asciidoc[How to run tests]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/documentation/versioning-strategy.asciidoc[Versioning Strategy]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/documentation/push-docker-image-dockerhub.asciidoc[How to build and push Docker images]

* https://github.com/mmahmoodictbd/production-ready-microservices-starter/blob/master/deployment/deployment-strategies.asciidoc[Deployment Strategies (Kubernetes, PCF and bare metal) (Work in progress)]

### Copyright & License

Licensed under the MIT License, see the link:LICENSE[LICENSE] file for details.