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.
Once added, the 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.