{"id":38119301,"url":"https://github.com/wkabbani/microservices","last_synced_at":"2026-01-16T22:27:41.977Z","repository":{"id":184629781,"uuid":"200395558","full_name":"wkabbani/microservices","owner":"wkabbani","description":"A project that showcases one way to build a microservices solution","archived":false,"fork":false,"pushed_at":"2019-09-15T08:49:15.000Z","size":492,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-04-25T06:33:37.679Z","etag":null,"topics":["docker","docker-compo","dotnet-core","entity-framework-core","golang","grpc","hangfire","kubernetes","material-ui","microservices","microservices-architecture","microservices-demo","react","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wkabbani.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-08-03T16:11:19.000Z","updated_at":"2024-01-05T00:46:08.000Z","dependencies_parsed_at":"2023-07-29T11:53:37.086Z","dependency_job_id":null,"html_url":"https://github.com/wkabbani/microservices","commit_stats":null,"previous_names":["wkabbani/microservices"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wkabbani/microservices","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wkabbani%2Fmicroservices","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wkabbani%2Fmicroservices/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wkabbani%2Fmicroservices/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wkabbani%2Fmicroservices/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wkabbani","download_url":"https://codeload.github.com/wkabbani/microservices/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wkabbani%2Fmicroservices/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28485314,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compo","dotnet-core","entity-framework-core","golang","grpc","hangfire","kubernetes","material-ui","microservices","microservices-architecture","microservices-demo","react","typescript"],"created_at":"2026-01-16T22:27:41.876Z","updated_at":"2026-01-16T22:27:41.963Z","avatar_url":"https://github.com/wkabbani.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Microservices Project\n\nA project that showcases one way to build a microservices solution.\n\n## Disclaimer\n\nThe porject is not meant to be production-ready or production-quality as there are a lot of left out todos, but the project aims to illustrate in a practical way rather than theoratical way, a set of common patterns found in simple, practical, real-world microsrevices solutions.\n\n## Overview of the patterns\n\n1. Writing multiple small services so that each microservice has its own unique responsibility and each microservice chooses its own tech stack including language, framework, libraries, commnication protocol, etc..\n2. Isolating the complexities of the authentication and authorization process and integrating it seamlessly with the solution.\n3. Health \u0026 Readiness checking for each microservice.\n4. Using multiple types of databases.\n5. Exposing services using REST and gRPC.\n6. Asynchronous processing for long-running tasks.\n7. Containerizing all services using Docker.\n8. Simplifying the development workflow using docker-compose.\n9. Preparing the Kubernetes deployment and services so they can be deployed to kubernetes.\n\n## Overview of the microservices\n\n### 1. wk-auth\n\nAuthentication \u0026 authorization microservice writting in [go](https://golang.org/)\n\n### 2. wk-blogs\n\nBlogs microservice writting in [node.js](https://nodejs.org/en/) \u0026 [nest.js](https://nestjs.com/)\n\n### 3. wk-cognitive\n\nCognitive operations microservice writting in C#, [dotnet core](https://dotnet.microsoft.com/) and [Hangfire](https://www.hangfire.io/)\n\n### 4. wk-dashboard\n\nFrontend microservice written in [React](https://reactjs.org/), [TypeScript](https://www.typescriptlang.org/) and [Materia-UI](https://material-ui.com/)\n\n### 5. wk-sentiment\n\nSentiment analysis microservice written in [Python](https://www.python.org/)\n\n### 6. wk-todos\n\nTodos microservice written in C# and [dotnet core](https://dotnet.microsoft.com/)\n\n### 7. wk-tts\n\nText-to-Speech microservice written in [go](https://golang.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwkabbani%2Fmicroservices","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwkabbani%2Fmicroservices","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwkabbani%2Fmicroservices/lists"}