Welcome to the Leonardo Framework Homepage
Leonardo is an Open Source framework for building cross-platform applications related to education.
The Leonardo API is designed for providing developers a flexible and robust OOP structure to create high-quality educational softwares with the Flash Platform.
One of the aims of the Leonardo project is to extend computers from mathematic and physic fields to all Learning Sciences, without any distinction.
The Leonardo project is distributed under the terms of the GNU-GPL3 license.
The Leonardo Framework contains several different parts that are organized around the "Leonardo core API". According to this organization, GUI implementations are completely separated from the Leonardo APIs.
The framework has two main APIs:
org.flashapi.leonardopackage contains the core API for the main framework,
org.flashapi.codexpackage contains MVC applications built on the top of the core API.
org.flashapi.codexpackage do not implement their own GUI, except the
LeonardoDisplayObjectinstances they use.
Both of the main APIs are used by third party applications released with the Leonardo Framework.
The Codex API introduces a new level of abstraction for the MCV design pattern: the MIOC architecture (Model-Input-Output-Controller).
In the MCV software architecture,
"the view renders the model into a form suitable for interaction, typically a user interface element. Multiple views can exist for a single model for different purposes. A viewport typically has a one to one correspondence with a display surface and knows how to render to it." (See Model–View–Controller.)
In the MIOC architecture, the view is replaced by an Input-Output API, which is an abstract Interface for interactions between the GUI and the application. It means that the GUI is completely separated from the MVC architecture and is no longer a part of the application.
The MIOC architecture does not indicates whether the Input and Output interfaces are seperated in two different objects, or not.
This concept has been introduced within the Codex API because of the strict separation of the Leonardo API and the GUI implementation.
The Leonardo Framework contains several additional parts that allow to extend the project capabilities.
The Mona Lisa API (
org.flashapi.monalisa) provides a robust structure for building software GUIs from the top of the SPAS 3.0 API. By using the Mona Lisa extension, developers will be able to create professional educational softwares fast and easilly.
The Vitruvius API (
org.flashapi.vitruvius) contains the localization classes for the Leonardo Framework.
The Leonardo project logos are available for download at the "Press section" of this site.
Go to the Leonardo documentation pre-release page.
We have setup a page where you can define, according to your profile, how you can contribute in your best way to the project, being a teacher, a developer, a typewriter, a translator, a designer or anyone not mentioned here.
There is always a way to contribute.
Please see our contribution page. (Not available yet.)
There are no comments yet for this article.