Squiggle
This monorepo covers multiple QURI projects, including Squiggle language, Squiggle Hub and Metaforecast
Install / Use
/learn @quantified-uncertainty/SquiggleREADME
Squiggle
A simple programming language for probabilistic estimation that runs on Javascript.
Get started
- Gallery
- Squiggle Playground
- Language basics
- Known bugs
- Original Lesswrong sequence
- Author your Squiggle models as Observable notebooks
- Use Squiggle in VS Code
Our deployments
- Language documentation: https://squiggle-language.com
- React components storybook: https://components.squiggle-language.com
- Squiggle Hub: https://squigglehub.org
Packages
This monorepo has several packages that can be used for various purposes.
Public packages
All packages that are published to npm can be found in packages.
@quri/squiggle-langinpackages/squiggle-langcontains the core language, particularly an interface to parse Squiggle expressions and return descriptions of distributions or results.@quri/squiggle-uiinpackages/uihas React components for common QURI projects.@quri/squiggle-componentsinpackages/componentscontains React components particularly meant to be used with Squiggle visualizations.packages/vscode-extis the VS Code extension for writing estimation functions. It's not published to npm, but it's published to the VS Code Marketplace.
Applications
Applications (usually built with Next.js) can be found in apps.
apps/websiteis the main documentation website for Squiggle. It is hosted atsquiggle-language.com.apps/hubis the code behind Squiggle Hub.
Internal packages
Internal packages (not published to npm) can be found in internal-packages.
Develop
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.
Contributing
See CONTRIBUTING.md.
Related Skills
node-connect
341.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.6kCommit, push, and open a PR
