FSI-based hot reloading of arbitrary values in arbitrary F# apps
An experimental library that provides hot reloading to any F# app for any purpose.
StringRegistry
for hot-reloadable string
values.StringRegistry
in the sample app uses the type StringId
as identifier which is simply a pair of a file path and a name. Whatever you choose as identifer, the file path must be part of it so that the system knows which files to watch for changes.HotReloading.enable
, specifying all the registries. If hot reloading is not initialized like this, your app can still interact with all the registries and registered values, but files are not watched for changes and no FSI session is created. This is important since you probably only want to enable hot reloading in debug builds, not in release builds.This is an experimental project, mostly for learning purposes.
It is not well tested and not production-ready. Use at your own risk.