MachaOn-L1 Project
The MachaOn-L1 project is an integrated solution that combines a modern frontend and a robust backend to deliver a scalable and efficient application. This implementation includes two core functionalities: a login form for authentication and a submit order feature to process customer orders. The application builds on key modular libraries from the Machanism and leverages Commercetools as the primary backing system for data and e-commerce operations.
Frontend Part
The frontend for the MachaOn-L1 project is implemented as a TypeScript-based application, developed using modular components from the Mach-B project libraries. This frontend is designed to provide a seamless user experience with fast, responsive interfaces and clean business logic.
- It is deployed as a static website on Amazon S3, making it easy to scale and cost-effective.
- The frontend is integrated with the backend Lambda functions using REST APIs to handle authentication and order submission workflows.
For detailed information, refer to the Frontend Description page.
Backend Part
The backend is implemented using AWS Lambda functions and builds upon Mach-C Core libraries, ensuring modularity, scalability, and Clean Architecture principles. It connects with Commercetools as the foundational backing system to:
- Process and validate user authentication via the login functionality.
- Support order workflows through the submit order API.
The backend is fully serverless, reducing operational overhead and ensuring high availability. Deployed on AWS, it efficiently integrates with other cloud-based services to provide a reliable and event-driven system.
For additional details, visit the Backend Description page.
Leveraging Mach-B Libraries for Frontend Customization
To accelerate development of the MachaOn-L1 frontend, the project relies on Mach-B TypeScript libraries. These libraries provide reusable UI components, encapsulating common frontend elements and patterns, minimizing effort and maximizing efficiency during development.
Why Mach-B Libraries?
-
Rapid UI Development:
- Mach-B libraries offer pre-built, customizable UI components that serve as building blocks for user interfaces.
- Developers can concentrate on extending adapters and integrating project-specific configurations while avoiding the need to rebuild common functionality from scratch.
-
Focus on Custom Adapters:
- The frontend takes advantage of Mach-B's flexibility to customize only the required adapters, ensuring seamless compatibility with the backend and other system components.
The diagram below illustrates how the Mach-C Core Libraries (marked in yellow) form the backend core system, while parts of the Mach-B Project (marked in blue) represent the foundational building blocks for the frontend.
This high-level integration between Mach-B for the frontend and Mach-C for the backend creates a cohesive, modular system designed to scale and adapt to evolving use cases.
Getting Started
1. Clone the Repository
git svn clone https://svn.code.sf.net/p/machc/svn/trunk/machaon/serverless/aws/machaon-l1
cd machaon-l1
2. Install AWS SAM CLI
3. Follows the instructions in the subprojects
Demo
Short demo
Manual test with Anteater tool
In this demo video showcasing project testing, Anteater is utilized as a scaffing tool to streamline interactions and demonstrate operational workflows for the MachaOn-L1 project. To replicate the showcased functionality, refer to the scaff folder in the project repository, which contains the required Anteater recipe and configuration files. These resources enable you to execute predefined scenarios and adapt the scaffing setup to your specific testing requirements.