squiggle/README.md

47 lines
1.8 KiB
Markdown
Raw Normal View History

2020-11-12 20:58:09 +00:00
# Squiggle
2020-02-05 21:09:27 +00:00
2022-03-24 18:42:27 +00:00
This is an experiment DSL/language for making probabilistic estimates. The full story can be found [here](https://www.lesswrong.com/s/rDe8QE5NvXcZYzgZ3).
2020-03-09 13:29:18 +00:00
This monorepo has several packages that can be used for various purposes. All
the packages can be found in `packages`.
2020-03-09 13:29:18 +00:00
2022-03-24 18:42:27 +00:00
- `@quri/squiggle-lang` in `packages/squiggle-lang` contains the core language, particularly
an interface to parse squiggle expressions and return descriptions of distributions
or results.
2022-03-24 18:42:27 +00:00
- `@quri/squiggle-components` in `packages/components` contains React components that
can be passed squiggle strings as props, and return a presentation of the result
of the calculation.
2022-03-24 18:42:27 +00:00
- `@quri/playground` in `packages/playground` contains a website for a playground
for squiggle. This website is hosted at `playground.squiggle-language.com`
2022-03-24 18:42:27 +00:00
- `@quri/squiggle-website` in `packages/website` The main descriptive website for squiggle,
it is hosted at `squiggle-language.com`.
The playground depends on the components library which then depends on the language.
This means that if you wish to work on the components library, you will need
2022-03-24 18:42:27 +00:00
to build and bundle the language, and for the playground to work, you will need to build and bundle
the components library and the playground.
# Develop
2022-03-24 18:42:27 +00:00
For any project in the repo, begin by running `yarn` in the top level (TODO: is this true?)
``` sh
yarn
```
See `packages/*/README.md` to work with whatever project you're interested in.
2022-03-24 18:42:27 +00:00
## `codium` for `rescript`
If you have `nix` installed with `flakes` enabled, you can build a `codium` in this repo for `rescript` development, if you don't want to pollute your machine's global editor with another mode/extension.
``` sh
nix develop
codium
```
The `nix develop` shell also provides `yarn`.
2022-03-24 18:42:27 +00:00
# Contributing
See `CONTRIBUTING.md`.