Developers
You want to develop some functionaly for the arkitekt framework. Great! Without you this framework would not exists. So thank you for your contribution.
So lets get you started!
Why Arkitekt?
Arkitekt is a framework, that aims to provide you (the bioimage analyst developer) with a set of tools to let you build your own bioimage analysis software, that others are happy to use and orchestrate in real-time workflows, without having to worry to much about all the underlying infrastructure.
As such we are trying to provide you with a set of tools that will help you to build your own applications. We also would like you to have an easy time sharing your analysis programs with others, so that they can use them as well.
As Arkitekt follows a highly modular approach so that you don't have to use and enable all of the framework if you don't want to. But some features you can rely on include:
-
Easy to build and easy to use GUI and API
Arkitekt can build powerful and highly costumizable widgets, that users can use when interfacing remotely with your analysis program. Have a CLI interface? No problem, Arkitekt can build a GUI for you. Have a GUI interface? No problem, Arkitekt can build remote API for it to.
-
Build safe tools
Arkitekt apps are always protected by a user and app authenticationsystem. This means that you higly customize your application for specific users, restrict access to resources, and most importanly that your development app does not delete all of your data.
-
Rely on the ecosystem
With Arkitekt you can easily integrate all the ecosystem of other apps in your program. This is especially useful if you want to build a small new analysis script (your new special algorithm), but don't want to reinvent the wheel for all the other analysis steps that are already available in other apps.
-
Use your work in Workflows
Want to integrate your analysis program in a workflow? No problem, Arkitekt can help you with that. All functionality that you build in your app can be automatically used in a workflow.
-
Access data from anywhere
With arkitekt you can access your data from anywhere This means that you can use your analysis program on your local machine, on a remote server, or even in the cloud. Arkitekt will take care of all the data transfer and storage for you.
What Arkitekt is not
-
Arkitekt is not a framework for replacing your existing analysis software and highly specialised GUIs. You should still use (and develop) your existing software and GUIs for your analysis. Look at Arkitekt as a bridge between your analysis software and the outside world of other bioimage apps.
-
Arkitekt is also not a tool for building highly parallizable and highly available distributed systems. There are other frameworks out there that are better suited for this task (e.g. Dask, Spark). Where these tools shine in their ability to highly scale specific analysis tasks, Arkitekt shines in universally bridging and orchestrating these tasks in a real-time workflow.