Getting started¶
Daisi (app.daisi.io) is a scientific Cloud Computing platform running Python serverless functions, named Daisies.
With Daisi you can:
- create web services, automate tasks, host apps… orders of magnitude easier and faster than traditional cloud platforms.
- parallelize compute intensive workloads by scaling up instantly to thousands of processes on demand.
- share your code and discover thousands of ready-to-call functions and apps !
Daisi brings the power of cloud computing into the hands of every developer, scientist, engineer by automatically deploying and creating endpoints for any function of a Python code, which can then be invoked seamlessly from any environment.
Any regular Python code can be turned into a Daisi by simply registering its Github repository in the Daisi platform, with no need to write any specific code.
Note
This project is under active development
Quick start with the pydaisi
Python package¶
Calling "Hello World !"¶
-
Install pydaisi (requires Python 3.8+)
-
Call the "Print Hello" Daisi and invoke the
hello()
endpoint
Check the code of this Daisi on app.daisi.io: "Print Hello".
And browse app.daisi.io to more discover Daisies !
What just happened ? Cloud Computing made easy !¶
We have instantiated a Daisi object and passed the name of a serverless function from the Daisi platform in argument.
This is how you can call any available Daisi. The pattern to call a Daisi is "username/daisiname"
, except if the Daisi is
public and its name is unique, in which case you can ommit "username"
.
A Daisi can have multiple endpoints. Endpoints are created automatically for every fuction
in the main script of your code. They are simply invoked as a method of the Daisi object, with
the method name being the name of the function. In this example, we have invoked the hello
endpoint
of the Print Hello
Daisi.
With pydaisi
you can send and receive arbitrary Python objects, as if you were passing arguments
to a local function. No need to serialize / deserialize, pydaisi
handles it automatically.
Invoking a Daisi endpoint returns a DaisiExecution
object. The value returned can be simply
retrieved by querying its .value
attribute.
Note
Public Daisies can be called without being authentified. Private Daisies shared within a team require authentication (see the Authentication section)
Daisies can also be apps !¶
You can give a nice front end to your Daisies, and the platform currently supports Streamlit (more frameworks to come). And convert your Daisi into a fully deployed app with an API for computer access....
Check this Daisi: "Print Hello App"