Technology
We use the latest web standards for a unique experience
CADdrive is based on the latest web standards such as HTML5 and CSS3 as well as TypeScript, a typed variant of JavaScript developed by Microsoft. We also rely on functional React components for the development of our user interface. In the backend, we use Decorator-based TypeScript frameworks for the REST API and the database connection.

Our technology stack
A classic client-server architecture with HTTP and MQTT interface
CADdrive is based on a classic client-server architecture in which the client and server are connected to each other via an HTTP and an MQTT interface.
The client includes a front end that runs on the user’s end devices. Thanks to responsive design principles, all screen sizes are supported, from smartphones to tablets and laptops to desktop workstations. In terms of technology, web standards such as HTML5, CSS3 and JavaScript are used. The 3D functions are also implemented using WebGL.
The server comprises a backend and a broker, which are operated in a private or public cloud. The backend is responsible for the HTTP interface, the broker for the MQTT interface. Write access to the database is requested and implemented via the backend and transmitted to the other clients in real time via the broker.

Our data model
Linking the key entities in product development
Our data model defines the key entities in product development and relates them to each other. The key entities include the users of the platform, the products, the CAD model revisions, the tasks including their discussion process and the milestone planning.
CAD model revisions form a revision graph in our data model, which contains branching and merging processes. In this context, branching means that two or more independent subsequent versions are derived from a model revision. Merging, on the other hand, describes the reverse process of merging model changes.
When discussing a task, users can refer to the content of a model revision. This is done by linking using appropriate Markdown syntax. The individual components or entire assemblies can be referenced.
