Builders are good at technology with deep experience, but customers are good at business and seeking best practice to accelerating their business. They were in different focus in terms of business and technology, and need to have a way to glue them together and coordinate smoothly.
Builders have deep knowledge of various of solutions, but need a way to scale impact in communities easily and effectively. Customers are constantly looking for best practice across communities to transformer their business, but need a way to allow them experience easily and cost efficiently.
Building Cloud Native application is fairly hard, building Cloud Native application with best practice is even hard. Too much to learn and too much to operate, so it became a impossible mission.
Customer could quickly spin up solutions on AWS and accelerating their adoption to AWS platform.
Mahjong is a platform to bridge the gap betewwn builders and customers through abstract solution and building blocks. It also could be a tool to simplify the experience and accelerate the cloud adoption on AWS.
A building block, defined by YAML, represents a cloud component or a combination of multiple cloud components or resources. Tile is categorized by Network, ContainerProvider, Storage, Database, Application, ContainerApplication, Analysis, ML. Application and ContainerApplication are represented through commands and files, and rest of categories are represented through Construct::CDK
A unit of deployment, defined by YAML, and all resources defined within the scope of Tiles.
A high level collection of deployment units, defined by YAML, represents a full solution and includes multiple Tiles with specific definition.
A control plane and core orchestration component inside Mahjong, which could be deployed as distributed services when reliability and scalability are highly concerned.
A terminal tool to interact with Mahjong, called mctl.
A web UI to interact with Mahjong.
A front store, for builders to publish Tile and Hu, for customers to search solutions and kick off provision on AWS straightway.