Microservices Basics
Overview
This documentation outlines these microservices concepts at a high level:
- Microservices Setup: Service creation.
- Microservices Design: Functionality, data model, api design, and maintainability.
- Microservices Modules: Controllers, services, models and repositories.
- Microservices Infra: Service utilities.
- Microservices Testing: Integration tests.
These topics are explained based on "Mahaam", which is a proof-of-concept (POC) todo app for different technologies and frameworks. Currently it is implemented in C#, Java, Go, TypeScript, and Python. The project is open-source and live on app stores.
Purpose
Mahaam is created to be a deeper proof-of-concept todo app. It has more functions than typical todo apps and pushed to production (app stores) to add real value.
Philosophy
Mahaam is implemented across different languages with identical functionality. All versions expose the same API endpoints and connect to the same database schema.
Maybe one language is better than another for a specific use case; however, these principles are what Mahaam cares about regardless of language or framework, and they are common throughout:
- Does the app meet business and user needs?
- Is the app data model well designed?
- Is the codebase readable and maintainable?
Target Audience
Mahaam targets software engineers at all levels.
