Corto is an open source component framework for applications on the edge that make data-driven decisions at the speed of light.
Some things just can't be done from the cloud, like collision detection in an autonomous car (what if it loses signal?). New requirements at the edge need intelligence to improve safety, increase efficiency and enable new solutions.
Corto is a batteries-included framework that lets you rapidly build intelligent components for the edge. As you grow an ecosystem of edge components, new data driven solutions can be quickly created simply by recombining existing components.
Corto's open source licensing reduces cost of adoption, mitigates the risk of vendor lock-in, allows projects to benefit from community contributions and ensures indefinite availability of the software.
Visit us on GitHub
Many of today's edge based solutions are one-offs and Proof of Concepts that, while providing insight into narrow problems, do not capture value in a form that is reusable for the next project.
Corto features a unique data-driven framework in which reusable components integrate seamlessly. This enables rapid creation of new solutions from an ecosystem of components that grows with every new project.
The Industrial Internet Consortium (IIC) released the IIC Connectivity Framework which clearly outlines the responsibilities of different layers in Industrial IoT systems. Corto fits in the "DDIM" layer, where it adds semantical awareness to data flowing in from underlying connectivity solutions.
Corto does not connect, upload or stream your data to anywhere, unless you explicitly tell it to. Your IoT data is your own, and we do not, and cannot access it. Corto has a powerful security API to ensure that once data enters corto, it can only go where you want it to.
Corto has simple and well documented API that leverages generated code to reduce the amount of boilerplate that developers have to write. Additionally the API relies on native language features to read and write data, which provides great performance and makes corto apps easy to write.
Car my_car = corto_create( root_o, "data/vehicles/my_car", Car_o); corto_update_begin(my_car); my_car->latitude = 37.7749; my_car->longitude = 122.4194; my_car->speed = 35; corto_update_end(my_car);
Installing corto is easy. Simply copy and paste the following command in a terminal.
curl https://corto.io/install-dev-src | sh
The in-memory store is the realtime communication fabric between components. Corto's expressive type system makes it possible to model any kind of IoT data as an object graph, and distribute realtime object updates between components. learn more
The virtual store lets multiple applications seamlessly use distributed datasets of any scale. It seamlessly integrates with the in-memory store, so your components can run on local or remote data, without making modifications to application code. learn more
Andy Foster, Product Director at IOTech
Alex Hendren, CEO and Founder - OASYS
Our team found Corto to be an indispensable component in our backend. Anya's varying customer requirements need tailored metrics to measure marketing success. Corto ability to quickly pull together metrics from all kinds of datasources lets us onboard new customers quickly.
Luke Peng, CEO and Founder - Anya