ING Bank Lion Project: Elevating Web Component Standards for Seamless Implementation
The ING Bank "Lion" project is an open-source GitHub repository that revolutionizes web components to deliver solutions for common use cases by maintaining cutting-edge web standards. Its relevance lies in the way it transcends the boundaries of conventional web development bringing a new wave in the field of data visualization and web design.
Project Overview:
The 'Lion' project aims to build a foundation for ING Bank's web applications by providing an extensive range of highly flexible web components. It is designed to resolve the complexities involved in the development of web applications by adhering to the best in class HTML, CSS, and JavaScript standards. The target audience of the project primarily includes web developers and programmers looking for scalable and robust solutions for developing high-performance web applications.
Project Features:
The 'Lion' project boasts of several key features like reusability, interoperability, encapsulation, and extensibility that redefine web component standards. These components are not an HTML-based design system or a UI library with limited customization. Instead, they serve as a scalable foundation that efficiently meets the diverse needs of web developers. For example, it includes several fundamental components such as input fields, dialogs, overlays, and calendar which can be customized as per specific project needs.
Technology Stack:
The 'Lion' project employs JavaScript as the primary programming language, complimented with the latest web standards on HTML and CSS. JavaScript was chosen due to its wide acceptance and extensive capabilities in developing effective web components. Moreover, the project also utilizes libraries like LitElement and lit-html, appreciated for their lightweight and efficient properties in rendering and re-rendering templates.
Project Structure and Architecture:
'Lion' maintains a monorepo structure where each component can be found in the 'packages' folder. Each package corresponds to a separate component allowing independent usage without any dependencies on other components. The project employs Single Responsibility Principle to ensure each component has a well-defined purpose, enhancing maintainability.