Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arkitektio/kabinet-server
A service to search for arkitekt apps and monitor deployed apps on container backends
https://github.com/arkitektio/kabinet-server
arkitekt arkitekt-service experimental next
Last synced: 19 days ago
JSON representation
A service to search for arkitekt apps and monitor deployed apps on container backends
- Host: GitHub
- URL: https://github.com/arkitektio/kabinet-server
- Owner: arkitektio
- Created: 2024-01-17T19:24:12.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-12-09T17:19:17.000Z (28 days ago)
- Last Synced: 2024-12-09T18:27:59.551Z (28 days ago)
- Topics: arkitekt, arkitekt-service, experimental, next
- Language: Python
- Homepage: https://arkitekt.live
- Size: 303 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kabinet-Server
## Develompent
Kabinet is a GraphQL API that allows you to retrieve and save containers
Arkitekt App). It is designed to be
used with Arkitekt Apps that are running in these containers, but can be used for any containerized applicationThis is a highly developmental service, that aims to replace Port in the Arkitekt Next Deployment. It is not yet ready for production.
## Usage
Most likely you will use a client library to interact with Kabinet, but you can also use the GraphQL API directly.
THe API is build along the following concepts:Repo: Repos are a collection of Versioned Releases of Apps that may exist in multiple versions. Repos provide ways
of finding and maintaining (updating) Apps.App: An App is Piece of Software that implements a certain functionality. Think: "Napari", "Fiji", "Stardist"
Release: A Release is a specific version of an App. Releases represent the functionality of an App at a certain point
in time. Arkitekt Apps are always released with a version number that follows the [Semantic Versioning](https://semver.org/) standard.
Think: "Napari 0.4.10", "Fiji 1.53c", "Stardist 0.1.0"Flavour: A Flavour is a specific configuration of an App. Flavours are used to provide different configurations of Apps, where the
core functionality is the same, but the configuration is different. Think: "Napari 0.4.10 on Python 3.8", "Fiji 1.53c with OpenJDK 11",
"Stardist 0.1.0 with CUDA 10.2" or "Stardist 0.1.0 on the CPU"Deployment: A Setup is the "Intent" to run a certain Release of an App (e.g. "Napari 0.4.10"), with specific access rights and identified by
a user. Thinks: "Napari 0.4.10 on Python 3.8 authorized as John Doe and able to access all his files", on a specific backend.Pod: A Pod is a running instance of a Setup. Pods are the actual running containers that provide the functionality of an App. They
are the only model that is actively maintained by the Backend. Pods are identified by a container specific ID and are always associated with a Setup.