Project Architecture - amouhtal/matcha-frontend GitHub Wiki



Welcome to the project architecture documentation for matcha-frontend. This documentation aims to provide a comprehensive overview of the architectural design and structure of our project.

Technologies Used


Angular is used as the primary frontend framework for building dynamic and responsive user interfaces. Its component-based architecture and powerful features facilitate the development of complex single-page applications.


HTML, CSS, and SCSS are utilized for structuring the user interface and styling the components. SCSS (Sass) preprocessor is employed to enhance CSS with variables, mixins, and other advanced features.

Tailwind CSS:

Tailwind CSS is employed for styling the user interface components. It offers a utility-first approach, allowing for rapid development and easy customization of design elements using pre-defined utility classes.


RxJS is utilized for reactive programming paradigms, enabling efficient handling


NgRx is utilized for state management in Angular applications. It implements Redux-inspired architecture for managing application state, facilitating predictable data flow and centralized state management.