Arkitekt Documentation

website·Indexed 32 days ago

https://arkitekt.live/

Arkitekt is an open-source platform and framework for bioimage analysis that acts as a middleman between data and tools. The platform utilizes a hub-and-spoke design and includes a suite of apps such as Orkestrator (the primary user interface), Konstruktor (the installer and admin tool), and various plugins like Kare and Segmentor.

Tokens
43.8K
Snippets
93
Records
358
Agent score
60%

What's inside Arkitekt

  1. Overview of Mikro storage system

    Mikro is Arkitekt's core storage system for bioimage data, utilizing a relational database and an S3-compatible object store to manage datasets of any size. It is functionally similar to OMERO. Developers interact with Mikro via the mikro client module within the arkitekt client, which provides convenience methods for integration with pandas, numpy, and xarray.
  2. Overview of Arkitekt Standalone Apps

    Standalones are Apps designed to be user-friendly entrypoints to the Arkitekt platform. They are installable anywhere in your lab on any computer and are intended to be easy to set up, even for those unfamiliar with the platform. While Arkitekt provides community-supported standalones, users can create their own.
  3. Overview of Arkitekt Core services and tools

    Arkitekt Core consists of the essential services and tools required to run the Arkitekt platform, whether in a standard or custom configuration.

    Core Services:

    • Lok: Authorization and Authentication service.
    • Rekuest: Action Repository and Task-Assignment.
    • Port: Virtualization of plugin apps.
    • Mikro: Microscopy Data Management.
    • Fluss: Workflow management.

    Clients and Management:

    • Orkestrator: The standard platform client (available as both desktop and web apps).
    • Konstruktor: The platform management tool used for installation and administration.
  4. Overview of Orkestrator for Arkitekt

    Orkestrator is the primary desktop user interface for the Arkitekt platform. It is used to create and manage workflows, inspect and comment on data, and interact with Arkitekt hubs. Unlike a web application, it is built on Electron and runs as a native application on Windows, MacOS, and Linux, allowing it to bypass browser restrictions regarding networking and hardware access.
  5. Overview of Arkitekt Next services architecture

    Arkitekt Next services represent the next generation of the Arkitekt platform, currently in development. This new architecture is based on the Strawberry GraphQL framework and is designed to provide increased flexibility and scalability. While these services are not yet ready for external use, the transition will be gradual. Most transitions will not require changes to the Arkitekt SDK (with the exception of mikro-next), but a new set of GUI clients is being developed in parallel to support this architecture. A migration guide will be released once the system is deemed stable.
  6. Overview of Lok Authentication and Authorization

    Lok is a service providing distributed authentication and authorization. It utilizes JWT (JSON Web Tokens) as cryptographically signed claims, allowing any service in the ecosystem to verify identity and access independently without needing to query a central server for every request.
  7. Overview of Arkitekt Plugin Apps

    Plugins are Apps built using software containers. Because they are containerized, they have specific requirements and limitations. Plugins are typically more tightly integrated with the Arkitekt Platform, often utilizing the platform's graphical user interface (GUI) for a more seamless user experience.
  8. Overview of Pokket mobile gateway

    Pokket is a mobile companion app for the Arkitekt ecosystem. It allows users to manage Arkitekt services and tasks, and provision ESP32-based devices. Key capabilities include authentication via lok, task management through rekuest service integration, and device provisioning using the Improv Wi-Fi protocol over BLE to configure Wi-Fi credentials (including Eduroam) and Arkitekt connection tokens.
  9. Overview of Kabinet AppStore

    Kabinet serves as the AppStore for the platform, allowing users to install applications from common repositories ('Repos') and discover the correct application for specific bioimage tasks. Unlike Port, Kabinet does not manage containers directly; it delegates container management to 'Container Backend' Apps while providing a central state store for querying and visualizing the status of plugins and containers across connected apps.
  10. Overview of Konstruktor for Arkitekt platform

    Konstruktor is the installer and administration tool for the Arkitekt platform. It is used to create a hub (or plugin engine) as a standard Docker Compose project and authorize it against a coordination server. Once set up, Konstruktor provides a dashboard to start, stop, update, back up, and inspect the hub. It is available as both a desktop application and a konstruktor command-line tool.
  11. Overview of Arkitekt GraphQL API

    Arkitekt exposes all its functionality through a set of GraphQL APIs. This design choice was made to support a developer-first approach and to handle highly relational bioimage data more efficiently than REST. Key benefits include:

    • Flexibility: Clients specify exact data needs to prevent over-fetching/under-fetching.
    • Strong Typing: Ensures data integrity and enables IDE-based API exploration.
    • Schema Evolution: New fields can be added without breaking existing queries.
    • Aggregation: Multiple data sources can be fetched in a single query.
    • Real-time Updates: Supports subscriptions for monitoring analysis progress (e.g., streaming analysis).
    • Self-documenting: Includes introspection capabilities accessible via the GraphIQL interface on the Arkitekt server.