ConventionalApp.jl

Develop conventional applications in Julia
Author ma-laforge
Popularity
2 Stars
Updated Last
2 Years Ago
Started In
December 2020

ConventionalApp.jl

Build Status

Provides tools to help deploy/execute conventional applications in Julia.

Background

Julia "Project Environments" define the set of packages to use for experimentation within particular problem spaces. The Julia flow therefore encourages users to activate a project environment and use problem-specific "scripts" to run their experiments.

By design, project environments are meant for somewhat open, "interactive" explorations (i.e. assemble custom analyses, as needed).

In comparison, conventional applications tend to run specific code when launched. ConventionalApp.jl therefore provides tools to help configure the Julia environment, and launch said code.

Table of contents

  1. Background
  2. Installation
  3. Usage
    1. Installing an application
      1. Creating a bash launch script
      2. Creating a Windows shortcut
    2. Using ConventionalApp in your application
      1. Add run_app() function
      2. Add run.jl file
      3. Add startup.jl file
  4. Sample application
  5. Known limitations
    1. TODO

Installation

ConventionalApp.jl is registered with Julia's General registry. It can be installed using Julia's built-in package manager:

julia> ]
pkg> add ConventionalApp

Sample application

See SampleConventionalApp.

Known limitations

TODO

  • Generate windows shortcuts instead of displaying instructions.
  • Add windows shortcut to start menu from application build script.
  • Add bash launcher to /usr/local/bin (or something) from build script if user has permissions.
  • Maybe lanunchers could be saved to ~/.juliaapps/bin and user could add that to path?

Compatibility

Extensive compatibility testing of ConventionalApp.jl has not been performed. The module has been tested using the following environment(s):

  • Windows 10 / Linux / Julia-1.5.3

Disclaimer

The ConventionalApp.jl module is not yet mature. Expect significant changes.