System Designer is an IDE for designing systems.

No matter the frameworks you use and the code you write, the most important is the model that you define to create your system.
System Designer helps you to design this model and to generate the classes and components to build your system.


If you look at the different JavaScript frameworks on the market, you will notice that they all have their own way to define a model, generally only with code.

System Designer uses UML, a standard, to define your model. So you probably already know how to design in System Designer even if you have never run it.

The definition of the model is stored on a JSON format called MSON. With MSON you can define types, classes, one to one / one to many relationships and multi inheritance between classes.


Once you have created your model, System Designer generates the skeletons of all your methods. You only have then to add your code to implement them.

System Designer provides you helpers to manage your components. You can easily navigate threw your components to create your application.


There is no need to code to instantiate a component. Create a component in System Designer is like creating a document in a NoSQL Database.

In fact, System Designer acts as an ODM (Object-Document Mapper) to manage your components as NoSQL Documents.


You can run your system directly from System Designer and then export it to JavaScript, HTML, JSON or a Node.js module.

Because you have defined a model for your application, a Dynamic Type Check is done on every action of your system. All warnings are send and shown in System Designer.


System Designer can load the model of any system that runs on the browser or on Node.js. You can see the schemas, models, components and methods of the running system and you can edit them.

All modifications to the model done inside System Designer will be send to the running system. There is no need to reload to see your modifications.


System Designer can be used on macOS, iPhone, iPad or any browsers. You can also install it in your project: System Designer requires no backend to work, it is a full web application.

System Designer has a Github module to synchronize your work between all these apps. You can begin your design on your Mac and then continue it on your iPad.

What's New

Version 2.9.2

- Added: you can navigate back / forward.
- Added: you can drag / drop Graphviz files in the Class Diagram viewer to see diagram from these files.
- Added: the properties and the methods of schemas and models are now ordered alphabetically.
- Improved: updating the default property of a model will update the related components.
- Improved: extension 'Generate a model from a JSON file'.

Ratings and Reviews

4.9 out of 5

7 Ratings

7 Ratings

Nice work


This is a really creative and de-facto well-structured approach to application and API design that I’m really digging… it’s making it pretty painless for me to put together something that I thought would have taken much, much longer. Especially considering I don’t know what I’m doing; I’ve been using Python on and off for the past ten years. But the structure of “behaviors” (and the fact that I’m not doing anything too complicated) makes it pretty easy for me to stack-overflow my way around actually having to learn or do much actual, proper learning, and still put together what’s turning out to be a pretty robust application from virtually nothing…

If I had to complain about something, it would be that some of the icons don’t seem to make much sense… I think if they were just easily to differentiate (different colors maybe), that could be enough. There aren’t a ton of buttons :)

Thanks again. Good work.

Developer Response

Thank you for your feedback! About the icons, I plan to try new ones and check if they fit better than the actual ones.

Pretty Cool


Clean and free


Erwan Carriou
56.1 MB
Developer Tools
English, Amharic, Arabic, Bengali, Bulgarian, Catalan, Croatian, Czech, Danish, Dutch, Estonian, Filipino, Finnish, French, German, Greek, Gujarati, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Kannada, Korean, Latvian, Lithuanian, Malay, Malayalam, Marathi, Norwegian Bokmål, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Simplified Chinese, Slovak, Slovenian, Spanish, Swahili, Swedish, Tamil, Telugu, Thai, Traditional Chinese, Turkish, Ukrainian, Vietnamese
Age Rating
Rated 4+
© 2018 Erwan Carriou


  • Family Sharing

    With Family Sharing set up, up to six family members can use this app.

More By This Developer