New as of version 0.9.1:

User Manual

The manual provides information for those wishing to use NIMBLE to work with their own models as well as algorithm developers wishing to write algorithms using NIMBLE. Old versions of the manual can be found here.

Training materials

Please see our collection of Github repositories with training materials for materials from our various NIMBLE training workshops, including workshops developed for statisticans and workshops developed for ecologists.

Other links

Some papers about NIMBLE

Motivation and design of NIMBLE:

de Valpine, P., D. Turek, C.J. Paciorek, C. Anderson-Bergman, D. Temple Lang, and R. Bodik. 2017. Programming with models: writing statistical algorithms for general model structures with NIMBLE. Journal of Computational and Graphical Statistics 26:403-413.

NIMBLE for Hidden Markov Models:

Turek, D., P. de Valpine, and C.J. Paciorek. 2016. Efficient Markov chain Monte Carlo sampling for hierarchical hidden Markov models. Environmental and Ecological Statistics 23:549–564.

NIMBLE for Ecological Models:

Ponisio, L.C., P. de Valpine, N. Michaud, and D. Turek. 2020. One size does not fit all: Customizing MCMC methods for hierarchical models using NIMBLEEcology & Evolution 1023852416.

Sequential Monte Carlo (particle filtering) methods in NIMBLE:

Michaud, N., P. de Valpine, D. Turek, C.J. Paciorek, and D. Nguyen. 2021. Sequential Monte Carlo Methods in the nimble and nimbleSMC R Packages.  Journal of Statistical Software 100(3): 1-39.

Spatial Epidemiology in NIMBLE:

Lawson, A.B. 2020. NIMBLE for Bayesian Disease Mapping.  Spatial and Spatio-temporal Epidemiology 33.

NIMBLE for item response theory models:

Paganin, S., C.J. Paciorek, C. Wehrhahn, A. Rodríguez, S. Rabe-Hesketh, and P. de Valpine. 2021. Computational methods for Bayesian semiparametric Item Response Theory models.


Hug, J.E., and C.J. Paciorek. 2021. A numerically stable online implementation and exploration of WAIC through variations of the predictive density, using NIMBLE.

Packages with extensions and applications of NIMBLE

A partial list of packages that extend or use nimble.

  • nimbleSMC: all of NIMBLE’s sequential Monte Carlo (aka particle filtering) algorithms; migrated out of the core NIMBLE package as of version 0.10.0.
  • nimbleEcology: distributions commonly used in ecology for use in nimble models
  • nimbleSCR:  utility functions, distributions, and methods for improving Markov chain Monte Carlo (MCMC) sampling efficiency for ecological spatial capture-recapture (SCR) models.
  • bayesNSGP: Bayesian analysis of (non-stationary) Gaussian processes, using nimble as the computational engine.
  • bcgam: Bayesian constrained generalized linear models
  • bridgesampling: functions for estimating marginal likelihoods, Bayes factors, posterior model probabilities, and normalizing constants in general, via different versions of bridge sampling.
  • nimbleDistance: user-defined distributions that can be used to implement distance sampling models in nimble.
  • nimbleCarbon: utility functions and bespoke probability distributions for the Bayesian analyses of radiocarbon dates.