Welcome to the developer documentation for the web client of Lime CRM. This comprehensive guide is designed to provide developers with an in-depth understanding of the platform, its structure, its capabilities, and the tools necessary for successful customization.
Lime CRM's web client is a powerful and flexible platform that is built with an emphasis on customization. It allows developers to modify and extend its functionality to better suit the unique needs of businesses, delivering custom solutions that can streamline operations, enhance customer relationships, and drive growth.
The web client is fundamentally built using state-of-the-art web technologies, including web components, ensuring a robust and responsive experience. Its structure is designed to be intuitive and modular, facilitating efficient development and maintenance of customizations.
From a customization developer's point of view, the web client of Lime CRM presents extensive opportunities. Web components serve as the primary technology for creating customizations, offering a high degree of flexibility and compatibility across different platforms and browsers.
Developers can adapt the user interface, create new workflows, integrate with third-party applications, and much more. The underlying APIs and built-in tools allow for a wide range of customizations, while still maintaining the overall stability and performance of the platform.
In order to effectively work with Lime CRM's web client, developers should have a solid understanding of TypeScript, as it is the primary language used within the client. Familiarity with the DOM and other Web APIs, including web components, is also crucial. Experience with the Stencil tooling for building these components will also be greatly beneficial. Understanding RESTful APIs will be advantageous, as these are used for data interaction between the client and server.
As for tooling, developers will require a suitable code editor (like Visual Studio Code), a modern web browser for testing, and Git for source code management. Developers should also have experience with Lime CRM's internal tool, Lime Project, which is used to create solutions/packages and help scaffold components. An understanding of unit testing frameworks and the ability to write effective tests will also be crucial for ensuring the stability of customizations, this will be covered in the Testing section.
By navigating through this documentation, developers will gain a comprehensive understanding of the Lime CRM web client, how it works, and how to create meaningful customizations to provide business value. Let's dive in!