- Table of Contents
- Introduction
- Full-stack Applications
- Social media links
- Commands used to build the project
- Follow me
Micro-service application with Eureka, Config Server, Zuul, Proxy based on DiscoveryClient Bean, Kafka(producer-consumer), and Rest Crud. You have to run a kafka on localhost:9092 before launching this instances, since the microservices rely on config server and eureka. The order of launch should be:
- Eureka
- Config Server
- OAuth Authorization Server that issues JWT
- Todo Service (It is also a OAuth Resource Server)
- Proxy Service
- Mail Service
- Zuul Gateway Service
The only requirement are the first two, the others you can launch them in any order, but I strongly recommend you to launch Gateway service the last, otherwise you may have to wait Zuul to fetch from Eureka the next time and hopefully the other microservices he routes through are now available.
I included the requests.postman_collection.json file which you can import into postman and issue the requests by yourself.
This project uses Asymmetric cryptography.
- To create the private key used to sign the keys by the oauth-server I did:
keytool -genkeypair -alias melardev -keyalg RSA -keysize 2048 -keystore private.jks -validity 3650
- export public key from jks, this will be used by resource-server to validate tokens without having to contact the oauth-server
keytool -list -rfc --keystore private.jks | openssl x509 -inform pem -pubkey -noout -out public.pem
- Python Django + Rest Framework
- Python Django
- Python Flask
- Asp.Net Core
- Asp.Net Core + MediatR
- Asp.Net Core + NHibernate
- Asp.Net Core + ADO.Net
- Asp.Net Core + Dapper
- Asp.Net Web Api 2
- Asp.Net Web Api 2 + NHibernate
- Asp.Net Web Api 2 + ADO.Net
- Asp.Net Web Api 2 + Autofac
- Asp.Net Web Api 2 + Dapper
- Laravel
- Ruby On Rails
- Ruby On Rails + JBuilder
- Spring Boot + Spring Data JPA
- Spring Boot + Spring Data MonoDb
- Spring Boot + Reactive Spring Data MonoDb + Basic Auth
- Kotlin Spring Boot + Reactive Spring Data MonoDb + Basic Auth
- Kotlin Spring Boot + Spring Data MonoDb
- Kotlin Spring Boot + Spring Data JPA
- Spring Boot + JAX-RS(Jersey) + Spring Data JPA
- Spring Boot Reactive + MongoDB Reactive
- Kotlin Spring Boot Reactive + MongoDB Reactive
- Java Spring Boot Web Reactive + Spring Data
- Kotlin Spring Boot Web Reactive + Spring Data
- Go + GORM
- Go + GinGonic + GORM
- Go + Gorilla + GORM
- Go + Beego(Web and ORM)
- Go + Beego + GORM
- Express.JS + Sequelize ORM
- Express.JS + BookShelf ORM
- Express.JS + Mongoose
- Java Spring Boot Zuul + Rest
- Kotlin Spring Boot Zuul + Rest
- Java Spring Cloud Eureka + Gateway + EurekaClient Proxy + Rest
- Java Spring Cloud Eureka + Gateway + LoadBalancedRest Proxy + Rest
- Java Spring Cloud Eureka + Gateway + Cloud Stream RabbitMQ + Admin + Rest
- Java Spring Cloud Eureka + Gateway + Config + Rest Swagger
- Java Spring Cloud Eureka + Gateway + Admin + Cloud Stream RabbitMQ + RxProxy + RxRest
- Java Spring Cloud Eureka + Gateway + Webflux + RxMongoDB + Rx Proxy with WebClient
- Java Spring Cloud Eureka + Zuul + Config + Kafka + Rest
- Java Spring Cloud Eureka + Zuul + Config + Hystrix + Turbine + Feign + Rest
- Java Spring Cloud Eureka + Zuul + Feign + Sleuth + Zipkin + Rest
- Java Spring Cloud Eureka + Zuul + Admin + Rest
- Java Spring Cloud Eureka + Gateway + Config + Cloud Bus RabbitMQ + Rest
- Java Spring Cloud Eureka + Zuul + Rest + LoadBalancer Proxy
- Java Spring Cloud Eureka + Config Server + Zuul + Kafka + Discovery Client Proxy + Rest
- Angular NgRx-Store
- Angular + Material
- React + Material
- React + Redux + Material
- Vue + Material
- Vue + Vuex + Material
- Ember
- Vanilla javascript
- AspNet Core
- Asp.Net Core + NHibernate
- Asp.Net Core + MediatR
- Asp.Net Core + ADO.Net
- Asp.Net Core + Dapper
- Asp.Net Web Api 2
- Asp.Net Web Api 2 + NHibernate
- Asp.Net Web Api 2 + ADO.Net
- Asp.Net Web Api 2 + Autofac
- Asp.Net Web Api 2 + Dapper
- Spring Boot + Spring Data + Jersey
- Spring Boot + Spring Data
- Spring Boot + Spring Data MonoDb
- Kotlin Spring Boot + Spring Data MonoDb
- Spring Boot Reactive + Spring Data Reactive
- Java Spring Boot Web Reactive + Spring Data
- Kotlin Spring Boot Reactive + MongoDB Reactive
- Kotlin Spring Boot Web Reactive + Spring Data
- Spring Boot + Reactive Spring Data MonoDb + Basic Auth
- Kotlin Spring Boot + Reactive Spring Data MonoDb + Basic Auth
- Go + GORM
- Go + Gin Gonic + GORM
- Go + Gorilla + GORM
- Go + Beego(Web and ORM)
- Go + Beego(Web) + GORM)
- Laravel
- Rails + JBuilder
- Rails
- NodeJs Express + Sequelize
- NodeJs Express + Bookshelf
- NodeJs Express + Mongoose
- Python Django
- Python Django + Rest Framework
- Python Flask
- NodeJs Express + Knex
- Flask + Flask-Restful
- Laravel + Fractal
- Laravel + ApiResources
- Go with Mux
- AspNet Web Api 2
- Jersey
- Elixir
- Angular NgRx-Store
- Angular + Material
- React + Material
- React + Redux + Material
- Vue + Material
- Vue + Vuex + Material
- Ember
- Vanilla javascript
- Spring Boot
- Spring Boot + OAuth with JWT
- Spring Boot + OAuth with JWT Separate Servers
- Java Spring Cloud Eureka + Zuul + Config + Kafka + OAuth2 Jwt + Proxy with DiscoveryClient + Rest Crud
- Spring Boot + Spring Data Hibernate
- Spring Boot + JAX-RS Jersey + Spring Data Hibernate
- Node Js + Sequelize
- Node Js + Bookshelf
- Node Js + Mongoose
- Python Django
- Flask
- Golang go gonic
- Ruby on Rails
- AspNet Core
- Laravel
The next to come are:
- Spring Boot + Spring Data Hibernate + Kotlin
- Spring Boot + Jax-RS Jersey + Hibernate + Kotlin
- Spring Boot + mybatis
- Spring Boot + mybatis + Kotlin
- Asp.Net Web Api v2
- Elixir
- Golang + Beego
- Golang + Iris
- Golang + Echo
- Golang + Mux
- Golang + Revel
- Golang + Kit
- Flask + Flask-Restful
- AspNetCore + NHibernate
- AspNetCore + Dapper
This client side E-commerce application is also implemented using other client side technologies:
- Angular NgRx-Store
- Angular + Material
- React + Material
- React + Redux + Material
- Vue + Material
- Vue + Vuex + Material
- Ember
- Youtube Channel I publish videos mainly on programming
- Blog Sometimes I publish the source code there before Github
- Twitter I share tips on programming
- Instagram I share from time to time nice banners