An Application is simply a git repository that contains Julia code in the structure of a package but with one important addition: a main.jl script in a top-level bin folder defines the main entry point for the app. This is what JuliaHub will execute on the master node.

Once you have a bin/main.jl script in the repo, you can add it as an Application that's available for you to launch in the cloud on JuliaHub.

An example application is SecretAnalysis.jl.

Adding an application

Once added, the Cloud Upload icon may be used to launch them. This opens the "Run in Cloud" pane with everything pre-populated and ready to go to run this app.


JuliaHub supports passing parameters to an application through the global ENV dictionary. These parameters are passed as strings; simply parse them as appropriate and use them in your application's main.jl script. A handy idiom is found in SecretAnalysis' exemplar main.jl:

n = parse(Int, get(ENV, "n", "100")) # Where 100 is the default value

These parameters may be entered (or not) through the web interface.