Skip to content

Latest commit

 

History

476 Commits

Folders and files

Repository files navigation

A collection of examples for RxInfer.jl

Official page Examples Contribute a new example Q&A

This repository contains a collection of examples for RxInfer.jl, a Julia package for reactive message passing and probabilistic programming.

Navigate to the Examples page to check the pre-rendered examples or clone the repository and run the examples locally. Additionally, explore the official RxInfer.jl documentation.

How to run the examples locally

Prerequisites

  • Julia
  • Weave.jl installed globally, it is used to convert the notebooks to markdown:
    julia -e 'using Pkg; Pkg.add("Weave")'
  • Node.js with node available on your PATH. make docs builds with Documenter's prerender = true, which shells out to node to apply syntax highlighting at build time rather than in the reader's browser. Without it the documentation still builds, but make docs warns and code blocks fall back to client-side highlighting.
  1. Clone the repository:

    git clone https://github.com/ReactiveBayes/RxInferExamples.jl.git
  2. Build the examples:

    make examples
  3. Build and preview the documentation:

    make docs
    make preview

Note

If you make changes to an example and still see old errors after rebuilding, try clearing the cache first with the make clean command.

All the examples are Jupyter notebooks, which also can be run with Jupyter. An example that uses a factor node RxInfer does not load, such as ContinuousTransition or Flow, loads the node's package itself and lists it in its Project.toml (see the contribution guide). Note, however, that the automatic build process merges the dependencies in all the examples into one single temporary environment. This means that dependencies can be resolved differently when running examples individually in comparison with the automatic build process.

Interactive examples

Most of the examples are available on the official website. Some examples, however, cannot be converted to a static HTML file and thus are placed under interactive/ folder. Those examples can only be executed inside Jupyter notebook environment (or a plugin like in VSCode) as they may require some features that are not available in pure HTML.

Contributing

We welcome contributions! Please check our contribution guide for guidelines.

Resources

License

This repository is licensed under the MIT License. See LICENSE for details.

Releases

Packages

Contributors

Languages