Modeloop is in Closed Beta. Join the waitlist for early access.

Our Vision

Designing the missing bridge between your imagination and physical reality.

The world of systems engineering has been stuck for decades in closed tools and isolated workflows. Modeloop is here to set your creativity free.

We believe that designing the future of robotics and intelligent systems should be as fluid, transparent, and inspiring as any great creative act.

Robotics at the Core

Robotics isn't just a feature; it's our foundation. Transform visual logic into intelligent, autonomous motion with an environment built for the next era of machines.

Confidence in Every Signal

Feel the security of knowing your system works perfectly. Validate your logic in a virtual world so your physical hardware is always safe and predictable.

Engineering at speed of light

We don't believe in over-engineering. Experience a tangible, zero-friction and high-level performance environment that feels so familiar you'll feel like you've been using it for years.

Your Logic, Unlocked

Own your work in a transparent, open world. No black boxes, no secrets — just your ideas captured in a format that belongs to you, forever.

Models as Code

In Modeloop, the diagram is not just a picture—it is a first-class software asset that can be versioned, diffed, and tested automatically.

pid_controller.json
Build ▶ Simulate
Atomic
Sum
Gain
Integral
Delay
I/O
Input
Output
<circle cx="10" cy="10" r="0.8" fill="white"/><circle cx="10" cy="28" r="0.8" fill="white"/><circle cx="10" cy="46" r="0.8" fill="white"/><circle cx="10" cy="64" r="0.8" fill="white"/><circle cx="10" cy="82" r="0.8" fill="white"/><circle cx="10" cy="100" r="0.8" fill="white"/><circle cx="10" cy="118" r="0.8" fill="white"/><circle cx="10" cy="136" r="0.8" fill="white"/><circle cx="10" cy="154" r="0.8" fill="white"/><circle cx="10" cy="172" r="0.8" fill="white"/><circle cx="28" cy="10" r="0.8" fill="white"/><circle cx="28" cy="28" r="0.8" fill="white"/><circle cx="28" cy="46" r="0.8" fill="white"/><circle cx="28" cy="64" r="0.8" fill="white"/><circle cx="28" cy="82" r="0.8" fill="white"/><circle cx="28" cy="100" r="0.8" fill="white"/><circle cx="28" cy="118" r="0.8" fill="white"/><circle cx="28" cy="136" r="0.8" fill="white"/><circle cx="28" cy="154" r="0.8" fill="white"/><circle cx="28" cy="172" r="0.8" fill="white"/><circle cx="46" cy="10" r="0.8" fill="white"/><circle cx="46" cy="28" r="0.8" fill="white"/><circle cx="46" cy="46" r="0.8" fill="white"/><circle cx="46" cy="64" r="0.8" fill="white"/><circle cx="46" cy="82" r="0.8" fill="white"/><circle cx="46" cy="100" r="0.8" fill="white"/><circle cx="46" cy="118" r="0.8" fill="white"/><circle cx="46" cy="136" r="0.8" fill="white"/><circle cx="46" cy="154" r="0.8" fill="white"/><circle cx="46" cy="172" r="0.8" fill="white"/><circle cx="64" cy="10" r="0.8" fill="white"/><circle cx="64" cy="28" r="0.8" fill="white"/><circle cx="64" cy="46" r="0.8" fill="white"/><circle cx="64" cy="64" r="0.8" fill="white"/><circle cx="64" cy="82" r="0.8" fill="white"/><circle cx="64" cy="100" r="0.8" fill="white"/><circle cx="64" cy="118" r="0.8" fill="white"/><circle cx="64" cy="136" r="0.8" fill="white"/><circle cx="64" cy="154" r="0.8" fill="white"/><circle cx="64" cy="172" r="0.8" fill="white"/><circle cx="82" cy="10" r="0.8" fill="white"/><circle cx="82" cy="28" r="0.8" fill="white"/><circle cx="82" cy="46" r="0.8" fill="white"/><circle cx="82" cy="64" r="0.8" fill="white"/><circle cx="82" cy="82" r="0.8" fill="white"/><circle cx="82" cy="100" r="0.8" fill="white"/><circle cx="82" cy="118" r="0.8" fill="white"/><circle cx="82" cy="136" r="0.8" fill="white"/><circle cx="82" cy="154" r="0.8" fill="white"/><circle cx="82" cy="172" r="0.8" fill="white"/><circle cx="100" cy="10" r="0.8" fill="white"/><circle cx="100" cy="28" r="0.8" fill="white"/><circle cx="100" cy="46" r="0.8" fill="white"/><circle cx="100" cy="64" r="0.8" fill="white"/><circle cx="100" cy="82" r="0.8" fill="white"/><circle cx="100" cy="100" r="0.8" fill="white"/><circle cx="100" cy="118" r="0.8" fill="white"/><circle cx="100" cy="136" r="0.8" fill="white"/><circle cx="100" cy="154" r="0.8" fill="white"/><circle cx="100" cy="172" r="0.8" fill="white"/><circle cx="118" cy="10" r="0.8" fill="white"/><circle cx="118" cy="28" r="0.8" fill="white"/><circle cx="118" cy="46" r="0.8" fill="white"/><circle cx="118" cy="64" r="0.8" fill="white"/><circle cx="118" cy="82" r="0.8" fill="white"/><circle cx="118" cy="100" r="0.8" fill="white"/><circle cx="118" cy="118" r="0.8" fill="white"/><circle cx="118" cy="136" r="0.8" fill="white"/><circle cx="118" cy="154" r="0.8" fill="white"/><circle cx="118" cy="172" r="0.8" fill="white"/><circle cx="136" cy="10" r="0.8" fill="white"/><circle cx="136" cy="28" r="0.8" fill="white"/><circle cx="136" cy="46" r="0.8" fill="white"/><circle cx="136" cy="64" r="0.8" fill="white"/><circle cx="136" cy="82" r="0.8" fill="white"/><circle cx="136" cy="100" r="0.8" fill="white"/><circle cx="136" cy="118" r="0.8" fill="white"/><circle cx="136" cy="136" r="0.8" fill="white"/><circle cx="136" cy="154" r="0.8" fill="white"/><circle cx="136" cy="172" r="0.8" fill="white"/><circle cx="154" cy="10" r="0.8" fill="white"/><circle cx="154" cy="28" r="0.8" fill="white"/><circle cx="154" cy="46" r="0.8" fill="white"/><circle cx="154" cy="64" r="0.8" fill="white"/><circle cx="154" cy="82" r="0.8" fill="white"/><circle cx="154" cy="100" r="0.8" fill="white"/><circle cx="154" cy="118" r="0.8" fill="white"/><circle cx="154" cy="136" r="0.8" fill="white"/><circle cx="154" cy="154" r="0.8" fill="white"/><circle cx="154" cy="172" r="0.8" fill="white"/><circle cx="172" cy="10" r="0.8" fill="white"/><circle cx="172" cy="28" r="0.8" fill="white"/><circle cx="172" cy="46" r="0.8" fill="white"/><circle cx="172" cy="64" r="0.8" fill="white"/><circle cx="172" cy="82" r="0.8" fill="white"/><circle cx="172" cy="100" r="0.8" fill="white"/><circle cx="172" cy="118" r="0.8" fill="white"/><circle cx="172" cy="136" r="0.8" fill="white"/><circle cx="172" cy="154" r="0.8" fill="white"/><circle cx="172" cy="172" r="0.8" fill="white"/><circle cx="190" cy="10" r="0.8" fill="white"/><circle cx="190" cy="28" r="0.8" fill="white"/><circle cx="190" cy="46" r="0.8" fill="white"/><circle cx="190" cy="64" r="0.8" fill="white"/><circle cx="190" cy="82" r="0.8" fill="white"/><circle cx="190" cy="100" r="0.8" fill="white"/><circle cx="190" cy="118" r="0.8" fill="white"/><circle cx="190" cy="136" r="0.8" fill="white"/><circle cx="190" cy="154" r="0.8" fill="white"/><circle cx="190" cy="172" r="0.8" fill="white"/><circle cx="208" cy="10" r="0.8" fill="white"/><circle cx="208" cy="28" r="0.8" fill="white"/><circle cx="208" cy="46" r="0.8" fill="white"/><circle cx="208" cy="64" r="0.8" fill="white"/><circle cx="208" cy="82" r="0.8" fill="white"/><circle cx="208" cy="100" r="0.8" fill="white"/><circle cx="208" cy="118" r="0.8" fill="white"/><circle cx="208" cy="136" r="0.8" fill="white"/><circle cx="208" cy="154" r="0.8" fill="white"/><circle cx="208" cy="172" r="0.8" fill="white"/><circle cx="226" cy="10" r="0.8" fill="white"/><circle cx="226" cy="28" r="0.8" fill="white"/><circle cx="226" cy="46" r="0.8" fill="white"/><circle cx="226" cy="64" r="0.8" fill="white"/><circle cx="226" cy="82" r="0.8" fill="white"/><circle cx="226" cy="100" r="0.8" fill="white"/><circle cx="226" cy="118" r="0.8" fill="white"/><circle cx="226" cy="136" r="0.8" fill="white"/><circle cx="226" cy="154" r="0.8" fill="white"/><circle cx="226" cy="172" r="0.8" fill="white"/><circle cx="244" cy="10" r="0.8" fill="white"/><circle cx="244" cy="28" r="0.8" fill="white"/><circle cx="244" cy="46" r="0.8" fill="white"/><circle cx="244" cy="64" r="0.8" fill="white"/><circle cx="244" cy="82" r="0.8" fill="white"/><circle cx="244" cy="100" r="0.8" fill="white"/><circle cx="244" cy="118" r="0.8" fill="white"/><circle cx="244" cy="136" r="0.8" fill="white"/><circle cx="244" cy="154" r="0.8" fill="white"/><circle cx="244" cy="172" r="0.8" fill="white"/><circle cx="262" cy="10" r="0.8" fill="white"/><circle cx="262" cy="28" r="0.8" fill="white"/><circle cx="262" cy="46" r="0.8" fill="white"/><circle cx="262" cy="64" r="0.8" fill="white"/><circle cx="262" cy="82" r="0.8" fill="white"/><circle cx="262" cy="100" r="0.8" fill="white"/><circle cx="262" cy="118" r="0.8" fill="white"/><circle cx="262" cy="136" r="0.8" fill="white"/><circle cx="262" cy="154" r="0.8" fill="white"/><circle cx="262" cy="172" r="0.8" fill="white"/><circle cx="280" cy="10" r="0.8" fill="white"/><circle cx="280" cy="28" r="0.8" fill="white"/><circle cx="280" cy="46" r="0.8" fill="white"/><circle cx="280" cy="64" r="0.8" fill="white"/><circle cx="280" cy="82" r="0.8" fill="white"/><circle cx="280" cy="100" r="0.8" fill="white"/><circle cx="280" cy="118" r="0.8" fill="white"/><circle cx="280" cy="136" r="0.8" fill="white"/><circle cx="280" cy="154" r="0.8" fill="white"/><circle cx="280" cy="172" r="0.8" fill="white"/><circle cx="298" cy="10" r="0.8" fill="white"/><circle cx="298" cy="28" r="0.8" fill="white"/><circle cx="298" cy="46" r="0.8" fill="white"/><circle cx="298" cy="64" r="0.8" fill="white"/><circle cx="298" cy="82" r="0.8" fill="white"/><circle cx="298" cy="100" r="0.8" fill="white"/><circle cx="298" cy="118" r="0.8" fill="white"/><circle cx="298" cy="136" r="0.8" fill="white"/><circle cx="298" cy="154" r="0.8" fill="white"/><circle cx="298" cy="172" r="0.8" fill="white"/><circle cx="316" cy="10" r="0.8" fill="white"/><circle cx="316" cy="28" r="0.8" fill="white"/><circle cx="316" cy="46" r="0.8" fill="white"/><circle cx="316" cy="64" r="0.8" fill="white"/><circle cx="316" cy="82" r="0.8" fill="white"/><circle cx="316" cy="100" r="0.8" fill="white"/><circle cx="316" cy="118" r="0.8" fill="white"/><circle cx="316" cy="136" r="0.8" fill="white"/><circle cx="316" cy="154" r="0.8" fill="white"/><circle cx="316" cy="172" r="0.8" fill="white"/> ref + Kp output H(s) PID Controller
Properties
Kp — Gain
Gain 1.5
Type float64
Inputs 1
Outputs 1
Param $Kp
● Ready PID Controller Step: 0.001 s

Our Manifesto

Transparency over Obscurity

Binary formats belong to the past. Every bit of logic in Modeloop is saved in human-readable JSON.

Ownership over Lock-in

Your models are yours. The execution engine is open-core and built on industry standards.

Speed over Bureaucracy

From idea to simulation in seconds. Lightweight tools that accelerate innovation, not hinder it.

Start Designing Today

Free on the web. No install required. Open your browser and build your first system in minutes.

Want the native desktop app?

Join the waitlist for early desktop access