A more elegant operating system for a more civilized age.
Osmium is an operating system based on the internet. It (will) has (have) support for all of the functions of an operating system. It focuses on the maximization of productivity in an easy and customizable way.
Applications are made using web technologies. There are several types of applications:
These are applications that come with the OS itself. It extends AppObject, but has more permissions, including the full access of everything. However, third-party apps will not be allowed to create apps using the DefaultApp Object.
This is the root class for the app system, and it is run in an <iframe>, although the <iframe> is not sandboxed. It is assumed that these <iframes> are cross-origin. The OS does not communicate with the <iframe> in any way. These can be created by the user directly.
These are the third party variant of the DefaultApp. These are sandboxed. These applications will be able to access the system to some extent, but they will be contained within a dialog.
This uses the "jailed" library (or rather a slightly modified version of it - the slight modification currently does not do much). The api allows the application to set its own html. All event handlers, whether done with event listeners or onclick are removed.
All event listeners will be attached through the api provided to the application. These are sandboxed using a separate jailed plugin. It is automatically disconnected by adding an application.disconnect line directly to the code provided, so timeouts will not work properly.
IntegratedApps are not bound by a dialog. Their html code is directly appended to the site. Their js, however, is fully sandboxed, and event handlers like onclick directly embedded into html may be removed, although not yet.
Applications are prevented from conflicting with the concept of namespaces. These are done by modifying the API provided to the applications and adding a class of its app id to its container element. id attributes will be removed at some time in the future, although not yet.
author: Owen li (a.k.a DarthCadeus, owner of this repository)
created with: canva.com
author website: http://www.thesquid.ink/flat-icons/
source: easyicon.net
author: Alessandro Roncone
author website: https://github.com/alecive/FlatWoken
source: easyicon.net
author website: easyicon.net
source: easyicon.net
author: Owen li (a.k.a DarthCadeus, owner of this repository)
created with: canva.com
http://www.thesquid.ink/flat-icons/, easyicon.net