| title | Application Developer Guide |
|---|
This guide walks you through everything you need to build, publish, and deploy elements — the name Exordos Core gives to applications — on the platform.
Set up an existing project as a Exordos Core element. The exordos init command launches an interactive wizard that generates all required configuration files — including manifests, and a exordos.yaml file that describes the build, publish, and deploy procedures.
exordos initAfter the wizard completes, your project will contain necessary configuration files — including manifests — that describe your element to the platform.
Compile and package your element along with all its artifacts. Exordos Core uses the build configuration defined in exordos.yaml to produce a distributable artifact.
exordos buildOn success, the build output (container image, binary, or other artifact type) is stored locally and tagged with the current element version.
Push the built element to the Exordos ecosystem registry so it becomes available to other platform users.
exordos pushThe element is versioned and pushed to the configured repository based on the metadata in exordos.yaml.
Install and run your element on a Exordos Core platform installation.
exordos elements install <element-name>The platform resolves dependencies, installs the target element, and starts it in the chosen realm.
Let's walk through platformizing a real FastAPI project from https://github.com/infraguys/todo_application.
This is a simple ToDo List API with PostgreSQL persistence. The goal here is not to explore the business logic, but to demonstrate how to take an existing application and platformize it using Exordos Core.
To follow this walkthrough, you need a running Exordos installation and the necessary tools.
Exordos — you can use either:
- A public Exordos installation — hosted at exordos.com. No setup required; just create an account and start using the platform.
- A private Exordos installation — your own self-hosted instance. This document describes how to set one up: Local Deployment.
Install the necessary tools below.
Install Exordos CLI:
curl -fsSL https://repo.exordos.com/install.sh | sudo shThe Packer version 1.9.2 or earlier due to licensing limitation. Download and place into /usr/local/bin/ or any other directory in your $PATH.
The Qemu:
sudo apt update
sudo apt install qemu-kvm mkisofs
sudo adduser $USER kvmYou may need to relogin to apply the changes. Now you are ready to build your element.
Clone the project:
git clone https://github.com/infraguys/todo_application.git && cd todo_applicationThe exordos init command allows you to initialize a new element interactively but you can also use it with flags. We will use the flags approach here to speed things up.
exordos init \
--project-name todo_application \
--project-type python \
--project-systemd-services "todo-api" \
--project-url "https://github.com/infraguys/todo_application" \
--project-python-package-manager "pip" \
--enable-pgsql \
--author-name "Developer" \
--author-email "dev@example.com" \
--manifest-description "A simple ToDo list element" \
--repository "https://repo.exordos.com/exordos-elements" \
--pgsql-usage-mode "own_cluster" \
--pgsql-database-name "todo_api" \
--pgsql-username "todo_api" \
--ci-cd "none"After executing this command, a summary will be displayed with the results of the initialization, showing the main configuration files. Study them to understand what was created.
The project is ready to be built and pushed as a Exordos Core element.
To build the element, run:
exordos buildUse the repository of your exordos installation and push the element:
exordos push -c exordos.push.yamlexordos elements install todo-apiThe ToDo API is now available at the configured endpoint.
Once you're comfortable with the basics, explore the more in-depth topics below.
- Writing a manifest from scratch — understand the full manifest specification and author one by hand without relying on the
exordos initwizard. - Setting up a private platform installation — spin up your own Exordos Core instance to develop and test your elements end-to-end without connecting to a remote environment.
- Public Exordos installation — use the hosted Exordos platform without managing your own infrastructure.