Skip to content

Commit

Permalink
update installation instructions and opinionated list of useful globa…
Browse files Browse the repository at this point in the history
…lly installed packages (#191)
  • Loading branch information
SamuelBrand1 authored Apr 29, 2024
1 parent a471c1e commit 8f620cd
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 0 deletions.
42 changes: 42 additions & 0 deletions EpiAware/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,14 @@

A `Julia` package for flexible and composable modeling and inference of the effective reproduction number (Rt) and other situational awareness signals in the presence of different latent generative processes and observation models.

## Installation instruction

Eventually, `EpiAware` is likely to be added to the Julia registry. Until then, you can install it from the `/EpiAware` sub-directory of this repository by running the following command in the Julia REPL:

```julia
using Pkg; Pkg.add(url="https://github.com/CDCgov/Rt-without-renewal", subdir="EpiAware")
```

## Model Diagram

- Solid lines indicate implemented features/analysis.
Expand Down Expand Up @@ -81,3 +89,37 @@ H-.->I
## Pluto scripts

We use [`Pluto.jl`](https://plutojl.org/) scripts as part of our documentation and testing. The scripts are located in `docs/src/examples` and can be run using the `Pluto.jl` package. We recommend using the version of `Pluto` that is pinned in the `Project.toml` file defining the documentation environment. An entry point to running or developing this documentation is the `docs/pluto-scripts.sh` bash shell script. Run this from the root directory of this repository.

## Useful Julia packages for global environment (optional and opinionated)
In our view these packages are useful for a global environment available to other environments (e.g. add to the `@v1.10` environment), but are not required for the `EpiAware` package to work.

- `Revise`: For modifying package code and using the changes without restarting Julia session.
- `Term`: For pretty and stylized REPL output (including error messages).
- `JuliaFormatter`: For code formatting.
- `Documenter`: For local documentation generation (useful for testing).
- `Pluto`: For interactive development and testing.
- `TestEnv`: For test development.

### `startup.jl` recommendation

We recommend adding a `startup.jl` file to import `Revise` and `Term` at the start of any Julia session. This file should be located in the `~/.julia/config` directory. Here is an example of a `startup.jl` file that loads the `Revise` and `Term`:

```julia
atreplinit() do repl
# Load Revise if it is installed
try
@eval using Revise
catch e
@warn "error while importing Revise" e
end
# Load Term if it is installed
try
@eval using Term
@eval install_term_repr()
@eval install_term_stacktrace()
catch e
@warn "error while importing Term" e
end
end

```
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ To evaluate the role of the latent generative process in the estimation of the e

In `pipeline`, we will use `EpiAware` to explore whether the inclusion of a renewal process in the latent generative process improves the estimation of Rt and other situational awareness signals. This exploration is then written as a manuscript for publication (see `manuscript` for work supporting this).

To install `EpiAware`, see installation instructions in the `EpiAware` directory [`README`](EpiAware/README.md).

## Project Admin

Name, Degrees, e-mail, CDC org (e.g., CDC/IOD/ORR/CFA)
Expand Down

0 comments on commit 8f620cd

Please sign in to comment.