A simple programming language for probabilistic estimation that runs on Javascript.
- Gallery
- Squiggle Playground
- Language basics
- Known bugs
- Original Lesswrong sequence
- Author your Squiggle models as Observable notebooks
- Use Squiggle in VS Code
- Language documentation: https://squiggle-language.com
- React components storybook: https://components.squiggle-language.com
- Squiggle Hub: https://squigglehub.org
This monorepo has several packages that can be used for various purposes. All
the packages can be found in packages
.
@quri/squiggle-lang
inpackages/squiggle-lang
contains the core language, particularly an interface to parse Squiggle expressions and return descriptions of distributions or results.@quri/squiggle-ui
inpackages/ui
has React components for common QURI projects.@quri/squiggle-components
inpackages/components
contains React components particularly meant to be used with Squiggle visualizations.packages/website
is the main documentation website for Squiggle. It is hosted atsquiggle-language.com
.packages/hub
is the code behind Squiggle Hub.packages/vscode-ext
is the VS Code extension for writing estimation functions.packages/cli
is an experimental way of using imports in Squiggle, which is also on npm.
For any project in the repo, begin by running pnpm install
in the top level:
pnpm i
Then use turbo
to build the specific packages or the entire monorepo:
turbo run build
Or:
cd packages/components
turbo run build
You can also run specific npm scripts for the package you're working on. See packages/*/README.md
for the details.
See CONTRIBUTING.md
.