If you are looking for a service to build a website purely by drag and drop, this probably isn't for you. Omni-CMS is a foundation for content that can be pulled from anywhere. It gives technical users the base to build on top of but also has the tools for anyone to author content from.
Omni-CMS is for entities wishing to...
The core of Omni-CMS including the API is written in the functional programming language, F#. Node.js, React and Angular are also used for the frontend of Omni-Admin and Omni-Site.
You certainly can. Omni-Site is for entities that want to quickly get started with a website. You may not need one at all in which case you would just have your app/service connect to the API. Omni-Admin has some convenient tools to help author content but you can push content directly to the API if you wish to.
Spaces are a virtual separation for serving different purposes using the same Omni-CMS instance. This allows for multi tenancy.
From a webpage to CSS, all content is composed of the same structure referred to as “components”. Each component has a key and lives inside a space. The key is always unique within a space.
There is no complicated publishing mechanism in Omni-CMS. A simple “published” boolean indicates whether the component will be available to the public.
Only authenticated users are able to call for unpublished components or see unpublished child components.
There is no limit to the depth of child components. API consumers call which component to retrieve and specify how many more levels of child components to return.
In terms of referential integrity, there is only the parent/child relationships. You can however get creative by leveraging the component's content or metadata (e.g. URL component).
The API key will only ever be revealed once (during the time of creation). There is no way for even us to find out what it is. You will need to regenerate a new one.