From 353e9eca654bd81a3268c8e4f30b5c23b9d36d45 Mon Sep 17 00:00:00 2001
From: Dag Brattli
Date: Tue, 27 Sep 2022 07:51:14 +0200
Subject: [PATCH] Porting of 2-steps docs
---
docs-src/2-steps/setup.md | 25 +
docs-src/2-steps/your-first-fable-project.md | 52 ++
docs-src/_toc.yml | 2 +
docs-src/your-fable-project/testing.md | 33 +-
docs/2-steps/setup.html | 515 +++++++++++++++++
docs/2-steps/your-first-fable-project.html | 540 ++++++++++++++++++
docs/communicate/fable-from-py.html | 16 +-
docs/communicate/py-from-fable.html | 10 +
docs/dotnet/compatibility.html | 10 +
docs/dotnet/numbers.html | 10 +
docs/genindex.html | 10 +
docs/index.html | 10 +
docs/intro.html | 10 +
docs/introduction/dotnet-users-read-this.html | 10 +
docs/introduction/py-users-read-this.html | 10 +
docs/new-to-fsharp/learning-the-language.html | 10 +
docs/new-to-fsharp/let-keyword.html | 16 +-
docs/objects.inv | Bin 584 -> 626 bytes
docs/search.html | 10 +
docs/searchindex.js | 2 +-
.../author-a-fable-library.html | 10 +
docs/your-fable-project/build-and-run.html | 10 +
docs/your-fable-project/project-file.html | 10 +
docs/your-fable-project/testing.html | 10 +
.../use-a-fable-library.html | 10 +
25 files changed, 1339 insertions(+), 12 deletions(-)
create mode 100644 docs-src/2-steps/setup.md
create mode 100644 docs-src/2-steps/your-first-fable-project.md
create mode 100644 docs/2-steps/setup.html
create mode 100644 docs/2-steps/your-first-fable-project.html
diff --git a/docs-src/2-steps/setup.md b/docs-src/2-steps/setup.md
new file mode 100644
index 0000000..a3c637c
--- /dev/null
+++ b/docs-src/2-steps/setup.md
@@ -0,0 +1,25 @@
+# Setup
+
+## Prerequisites
+
+In order to use Fable you will need the following tools:
+
+- [.NET Core SDK](https://dotnet.microsoft.com/) to work with F# files and dependencies
+- [Python](https://python.org/) to execute Python code
+- A Python package manager, like [poetry](https://python-poetry.org/)
+
+Having the above tools, you may consider using [Femto](https://fable.io/blog/2019/2019-06-29-Introducing-Femto.html) to
+ease package management.
+
+## Development tools
+
+Basically you will need an editor that lets you code in F# with features like hints on hover, autocomplete, syntax
+highlighting and so on... and there are many of them to suit your code styling!
+
+- [Visual Studio Code](https://code.visualstudio.com/) with [Ionide](http://ionide.io/)
+- [JetBrains Rider](https://www.jetbrains.com/rider/)
+- [Visual Studio For Windows](https://visualstudio.microsoft.com/)
+- [Visual Studio For Mac](https://visualstudio.microsoft.com/vs/mac/)
+- [Vim](https://www.vim.org/) with [F# bindings](https://github.com/fsharp/vim-fsharp)
+- [Emacs](https://www.gnu.org/software/emacs/)/[spacemacs](http://spacemacs.org/) with
+ [fsharp-mode](https://github.com/fsharp/emacs-fsharp-mode)
diff --git a/docs-src/2-steps/your-first-fable-project.md b/docs-src/2-steps/your-first-fable-project.md
new file mode 100644
index 0000000..8a2f6ef
--- /dev/null
+++ b/docs-src/2-steps/your-first-fable-project.md
@@ -0,0 +1,52 @@
+# Start a new project
+
+Now we're ready, let's start a new project using Fable!
+
+## Use a Fable template
+
+The easiest way to get started with Fable is to use a template (learn more about [dotnet
+templates](https://docs.microsoft.com/en-us/dotnet/core/tools/custom-templates#installing-a-template)). For a minimal
+Fable project, create and navigate to a new directory and run the following commands (first one is only needed if you
+haven't installed the template yet in your system).
+
+1. `dotnet new --install Fable.Template`
+2. `dotnet new fable`
+
+The rest of this document applies to Fable.Template. Alternatively, if you want specific examples or a more
+comprehensive template with more tooling and libraries installed, please check one of the following:
+
+- Clone the [Fable 3 samples](https://github.com/fable-compiler/fable3-samples) repository to learn how to use Fable
+ with different kinds of apps (browser, nodejs, testing, etc)
+- Build a [React](https://reactjs.org/) app in F# with [Feliz
+ template](https://zaid-ajaj.github.io/Feliz/#/Feliz/ProjectTemplate)
+- Write a frontend app fully in F# without JS dependencies with
+ [Sutil](https://davedawkins.github.io/Sutil/#documentation-installation)
+- Get up to speed with [SAFE Template](https://safe-stack.github.io/docs/quickstart/) which covers both the frontend and
+ backend sides of your app
+
+## Install dependencies
+
+**Python dependencies** are listed in the `pyproject.toml` file. You can run `poetry install`, which will download the
+needed packages to the `.venv` folder and create a lock file.
+
+**.NET dependencies** are listed in the `src/App.fsproj` file. You can install them by running `dotnet restore src`, but
+this is already automatically done by Fable.
+
+:::{note}
+Lock files (like `poetry.lock` if you're using poetry) should be committed to ensure reproducible builds whenever
+anybody clones your repo. For .NET dependencies you can create a lock file by using [Paket](https://fsprojects.github.io/Paket/).
+:::
+
+## Build & run the app
+
+Here we go. If you've already installed Python dependencies, just run `python app.py` (or `poetry run python app.py` if
+you are using poetry). After a few seconds, your web server app will be running in the background until you kill it.
+
+- You can access your project at [http://localhost:8080/](http://localhost:8080/) with your favorite browser.
+- The server is in “watch” mode. Each time you save an `.fs` F# source file, Fable rebuilds the project automatically.
+ If the build succeeds, you will see your changes in the browser without refreshing the page; if not, nothing changes
+ in the browser, and you can see the build errors in the server’s console output.
+
+:::{note} The `npm start` command is just an alias for `dotnet fable watch src --run webpack-dev-server`, check the
+"scripts" section of the `package.json` file. Please also check the `README.md` file shipped with the template to get
+up-to-date instructions. :::
diff --git a/docs-src/_toc.yml b/docs-src/_toc.yml
index 0a59ea3..cecdbb1 100644
--- a/docs-src/_toc.yml
+++ b/docs-src/_toc.yml
@@ -9,6 +9,8 @@ chapters:
- file: introduction/py-users-read-this
- file: new-to-fsharp/learning-the-language
- file: new-to-fsharp/let-keyword
+- file: 2-steps/setup
+- file: 2-steps/your-first-fable-project
- file: communicate/fable-from-py
- file: communicate/py-from-fable
- file: dotnet/compatibility
diff --git a/docs-src/your-fable-project/testing.md b/docs-src/your-fable-project/testing.md
index 329f295..af526a6 100644
--- a/docs-src/your-fable-project/testing.md
+++ b/docs-src/your-fable-project/testing.md
@@ -2,17 +2,22 @@
You can use all tools of the Python ecosystem.
-Several js libs already have a Fable binding:
+Several Python libs already have a Fable binding:
- mocha: [https://github.com/Zaid-Ajaj/Fable.Mocha](https://github.com/Zaid-Ajaj/Fable.Mocha)
- jest: [https://github.com/Shmew/Fable.Jester](https://github.com/Shmew/Fable.Jester)
-# Example with jest
+## Example with pytest
+
## Setup
-You should install js test runner :
+
+You should install pytest:
+
```sh
- npm install jest --save-dev
+poetry add --dev pytest
```
+
And Fable binding :
+
```sh
# nuget
dotnet add package Fable.Jester
@@ -21,7 +26,9 @@ And Fable binding :
```
## Write tests
+
Now, you can write your first test :
+
```fsharp
open Fable.Jester
@@ -31,16 +38,21 @@ Jest.describe("can run basic tests", fun () ->
)
)
```
+
See Jester documentation to more informations : [https://shmew.github.io/Fable.Jester/](https://shmew.github.io/Fable.Jester/)
## Run
-Before running the tests, you have to convert your project to JS, but you don't need to bundle with Webpack, because test runners generally prefer to have small files rather than a single big file. So we only need to run the Fable compiler and put the generated code in an output dir.
+
+Before running the tests, you have to convert your project to Python, but you don't need to bundle with Webpack, because
+test runners generally prefer to have small files rather than a single big file. So we only need to run the Fable
+compiler and put the generated code in an output dir.
```sh
dotnet fable src -o output
```
You should config Jest with a config file `jest.config.js` :
+
```js
module.exports = {
moduleFileExtensions: ['js'],
@@ -51,12 +63,14 @@ module.exports = {
transform: {}
};
```
+
`roots` should be equal to the `outDir` of the compiler.
`testMatch` indicate file pattern name with test.
`coveragePathIgnorePatterns`, `testEnvironment`, `transform` improve performance of runner.
You can read Jest doc to see more : [https://jestjs.io/docs/en/configuration](https://jestjs.io/docs/en/configuration)
Now, you can run then tests:
+
```sh
npx jest --config=jest.config.js
```
@@ -64,6 +78,7 @@ Now, you can run then tests:
Youhou! You can see the test result :)
You can specify this command on npm in `package.json` :
+
```json
{
"scripts": {
@@ -71,23 +86,28 @@ You can specify this command on npm in `package.json` :
},
}
```
+
And now run with a single command:
+
```sh
npm test
```
## Watch mode
+
Running tests each time is slow.
You can use the watch feature to take advantage of the compiler and runner cache, and run tests whenever a file changes.
Currently, Fable doesn't have official plugins for the different runners.
So you have to execute these two commands in parallel:
+
```sh
dotnet fable watch src -o output
npx jest --config=jest.config.js --watchAll
```
You add an npm script in `package.json` :
+
```json
{
"scripts": {
@@ -98,12 +118,15 @@ You add an npm script in `package.json` :
},
}
```
+
I use `npm-run-all` to run several commands in parallel. You should install with:
+
```sh
npm install --save-dev npm-run-all
```
Now, run
+
```sh
npm run-script watch-test
```
diff --git a/docs/2-steps/setup.html b/docs/2-steps/setup.html
new file mode 100644
index 0000000..0986bdc
--- /dev/null
+++ b/docs/2-steps/setup.html
@@ -0,0 +1,515 @@
+
+
+
+
+
+
+
+
+ Setup — Fable Python
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Toggle navigation sidebar
+
+
+
+
+ Toggle in-page Table of Contents
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Setup
+
+
+
+
+
+
Contents
+
+
+
+
+
+
+
+
+
+
+
+
+
+Setup
+
+Prerequisites
+In order to use Fable you will need the following tools:
+
+.NET Core SDK to work with F# files and dependencies
+Node.js to execute JS code
+A JS package manager, like npm (which comes with Node) or yarn
+
+Having the above tools, you may consider using Femto to ease package management.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/2-steps/your-first-fable-project.html b/docs/2-steps/your-first-fable-project.html
new file mode 100644
index 0000000..f2fc5b0
--- /dev/null
+++ b/docs/2-steps/your-first-fable-project.html
@@ -0,0 +1,540 @@
+
+
+
+
+
+
+
+
+ Start a new project — Fable Python
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Toggle navigation sidebar
+
+
+
+
+ Toggle in-page Table of Contents
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Start a new project
+
+
+
+
+
+
Contents
+
+
+
+
+
+
+
+
+
+
+
+
+
+Start a new project
+Now we’re ready, let’s start a new project using Fable!
+
+Use a Fable template
+The easiest way to get started with Fable is to use a template (learn more about dotnet templates ). For a minimal Fable project, create and navigate to a new directory and run the following commands (first one is only needed if you haven’t installed the template yet in your system).
+
+dotnet new --install Fable.Template
+dotnet new fable
+
+The rest of this document applies to Fable.Template. Alternatively, if you want specific examples or a more comprehensive template with more tooling and libraries installed, please check one of the following:
+
+Clone the Fable 3 samples repository to learn how to use Fable with different kinds of apps (browser, nodejs, testing, etc)
+Build a React app in F# with Feliz template
+Write a frontend app fully in F# without JS dependencies with Sutil
+Get up to speed with SAFE Template which covers both the frontend and backend sides of your app
+
+
+
+Install dependencies
+JS dependencies are listed in the package.json
file. You can run npm install
, which will download the needed packages to the node_modules
folder and create a lock file.
+.NET dependencies are listed in the src/App.fsproj
file. You can install them by running dotnet restore src
, but this is already automatically done by Fable.
+
+
Note
+
Lock files (like package-lock.json
if you’re using npm) should be committed to ensure reproducible builds whenever anybody clones your repo. For .NET dependencies you can create a lock file by using Paket .
+
+
+
+Build & run the app
+Here we go. If you’ve already installed JS dependencies, just run npm start
. After a few seconds, your web server app will be running in the background until you kill it.
+
+You can access your project at http://localhost:8080/ with your favorite browser.
+The server is in “watch” mode. Each time you save an .fs
F# source file, Fable rebuilds the project automatically. If the build succeeds, you will see your changes in the browser without refreshing the page; if not, nothing changes in the browser, and you can see the build errors in the server’s console output.
+
+
+
Note
+
The npm start
command is just an alias for dotnet fable watch src --run webpack-dev-server
, check the “scripts” section of the package.json
file. Please also check the README.md
file shipped with the template to get up-to-date instructions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/communicate/fable-from-py.html b/docs/communicate/fable-from-py.html
index 4adb9ed..a496dbe 100644
--- a/docs/communicate/fable-from-py.html
+++ b/docs/communicate/fable-from-py.html
@@ -53,7 +53,7 @@
-
+
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
@@ -658,11 +668,11 @@
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/dotnet/compatibility.html b/docs/dotnet/compatibility.html
index 9cb0628..d040c54 100644
--- a/docs/dotnet/compatibility.html
+++ b/docs/dotnet/compatibility.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/dotnet/numbers.html b/docs/dotnet/numbers.html
index 1433685..1a8fde2 100644
--- a/docs/dotnet/numbers.html
+++ b/docs/dotnet/numbers.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/genindex.html b/docs/genindex.html
index fef834f..140e284 100644
--- a/docs/genindex.html
+++ b/docs/genindex.html
@@ -136,6 +136,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/index.html b/docs/index.html
index 9d6ef40..7f91e19 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -138,6 +138,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/intro.html b/docs/intro.html
index 756ff80..f02b31e 100644
--- a/docs/intro.html
+++ b/docs/intro.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/introduction/dotnet-users-read-this.html b/docs/introduction/dotnet-users-read-this.html
index 98bb0b6..8a0741b 100644
--- a/docs/introduction/dotnet-users-read-this.html
+++ b/docs/introduction/dotnet-users-read-this.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/introduction/py-users-read-this.html b/docs/introduction/py-users-read-this.html
index dea9df5..759239a 100644
--- a/docs/introduction/py-users-read-this.html
+++ b/docs/introduction/py-users-read-this.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/new-to-fsharp/learning-the-language.html b/docs/new-to-fsharp/learning-the-language.html
index 601e531..de60cbf 100644
--- a/docs/new-to-fsharp/learning-the-language.html
+++ b/docs/new-to-fsharp/learning-the-language.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/new-to-fsharp/let-keyword.html b/docs/new-to-fsharp/let-keyword.html
index 60a8ce1..0c8f152 100644
--- a/docs/new-to-fsharp/let-keyword.html
+++ b/docs/new-to-fsharp/let-keyword.html
@@ -52,7 +52,7 @@
-
+
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
@@ -525,10 +535,10 @@ References
-
+
next
-
Call Fable from Python
+
Setup
diff --git a/docs/objects.inv b/docs/objects.inv
index 5b3a3d50c5f5a755b0dfc2e819607f0c4da97788..64365dd23fd143ce3b6a48b8b54a9fd387d3a407 100644
GIT binary patch
delta 518
zcmV+h0{Q*O1o8xsc7IKe)G!Ra_g7d#;+C!0BNqgSm5^Yy5{o#ejXMpbNtHM({r9AG
z$~HTl4^GqZ^Lx*+6W@wJIEFeP#SsFjx5~93-oWh^xanyy@NNFAR$y|`i%$DMqLYn5
zF?#nCTiO#jm78@*dIAX+pCAKO>xLm(-AclmDV=wN7^kiL$$uo){V0uryEzVX93Cd>
zoh_uti75;Flys4_k!C&CUTiAm$RgE=JWA4yHkyip_iz@xx&QPC(ki%n1qHln+Bh`m
z!;V@;Sm!wpf;M7j1lhO*X#Mfk!E*ked-FHDwbfK4itPM(^=5k1eD2%j+
zC=bPzyds@VzGMgz1S@ppM&cJvPtL1z9{-Y9`EeFRf`1&WHs`x=@Z7QD{2|rZ_9c;H
z>%Lj=hq-#*Aluzh%a|m+kU4C0i
IFD~9@f=Dd|%>V!Z
delta 476
zcmV<20VDqM1jq!Cc7IEc(=ZUe=U0q`#LXLV<$?gQ5)!OdVi9M@o-_u>j{IQBzh{zh
z*?606%c<=*-(x&uSNUP+i6@y%XRJw8!+(2qHoUp}^Z?RnxP1jx
z`RM8L*kOn}Zl%ILcX`BM6r_2=*c{Lqr}59Kva&Y+pFv3n
z9l{iR*5G@RrQmBB0WAA5$OI?=a}~a*VZJ@
zP~&g3e!}o9k$;wWZQ3dIc~Y6kCTsM1XVTWWjQ=l=BrqXuC+|c6
diff --git a/docs/search.html b/docs/search.html
index 644a922..516c75f 100644
--- a/docs/search.html
+++ b/docs/search.html
@@ -142,6 +142,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/searchindex.js b/docs/searchindex.js
index cb82401..f3a2c38 100644
--- a/docs/searchindex.js
+++ b/docs/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["communicate/fable-from-py","communicate/py-from-fable","dotnet/compatibility","dotnet/numbers","index","intro","introduction/dotnet-users-read-this","introduction/py-users-read-this","new-to-fsharp/learning-the-language","new-to-fsharp/let-keyword","your-fable-project/author-a-fable-library","your-fable-project/build-and-run","your-fable-project/project-file","your-fable-project/testing","your-fable-project/use-a-fable-library"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinxcontrib.bibtex":9,sphinx:56},filenames:["communicate/fable-from-py.md","communicate/py-from-fable.md","dotnet/compatibility.md","dotnet/numbers.md","index.md","intro.md","introduction/dotnet-users-read-this.md","introduction/py-users-read-this.md","new-to-fsharp/learning-the-language.md","new-to-fsharp/let-keyword.md","your-fable-project/author-a-fable-library.md","your-fable-project/build-and-run.md","your-fable-project/project-file.md","your-fable-project/testing.md","your-fable-project/use-a-fable-library.md"],objects:{},objnames:{},objtypes:{},terms:{"0":[1,3,4,5,9,12,14],"0u":3,"0x0100_0000_2000_0000":3,"0x2000_0000":3,"0x2000_0001":3,"1":[0,1,3,13],"10":4,"10001":3,"12":4,"12345":3,"14":1,"15":0,"16":3,"2":[0,1,3,5,13],"24":1,"25":0,"28":3,"3":[0,1,4,7],"32":3,"4":[0,1],"40":1,"42":[1,9],"480":1,"5":[0,1,2],"500":2,"53":3,"6":[1,4,14],"64":[2,3],"7":1,"768":1,"8":[1,3],"9":[4,7],"99":1,"\u5bb6":0,"abstract":[0,1,2],"boolean":[0,2],"break":2,"byte":2,"case":[0,1,2,4,7,9,14],"catch":4,"char":[0,2],"class":[0,4,6],"const":9,"default":[0,1,2,4,5,9],"do":[2,9,10,12,14],"export":[1,13],"float":[0,1,2,3],"function":[1,2,4,5,9],"import":[0,6,12],"int":[0,1,2,4,9],"long":[0,1,3,9],"new":[0,1,9,11,12],"public":1,"return":[0,1,4],"static":[1,2],"switch":0,"true":1,"try":[0,4,6,7,9],"typeof":[1,2],"var":[0,1,9],"voil\u00e0":7,"while":14,A:[0,1,4],And:[1,5,7,9,13,14],As:[0,1],But:[0,7,14],By:1,For:[0,1,4,6,9,12,14],If:[0,1,8,11,14],In:[0,1,3,7,9,10],It:[0,1,2,5,10],No:2,Of:[4,9],One:3,That:[1,10,14],The:[0,1,2,3,4,5,6,10,14],Then:11,There:[0,1,2,4,6,7,8,14],These:[1,4,6],To:[0,1,10,12],Will:9,_:[0,1,4,12],__:[0,1,4],__all__:1,__init__:1,_awesom:1,_valu:1,abc:1,abl:[1,13],about:[2,8],abov:[0,1,4,9,12],abus:1,ac:4,accept:[0,1],access:[1,2],account:0,accur:3,aceofheart:4,achiev:1,activ:2,actual:[0,1,2],ad:[10,12,14],add:[0,1,6,9,10,13,14],addit:4,adifferentnam:1,adjust:1,advantag:[0,12,13],advis:1,affect:6,after:[1,9],against:[1,2,14],ajaj:13,ajax:4,alert:1,alia:1,all:[0,1,2,3,6,7,10,12,13,14],allow:[0,1],alreadi:[1,5,8,9,12,13],also:[0,1,2,4,5,6,8,9,10,14],altern:[3,10],although:[1,3,6],alwai:1,ambigu:0,amongst:1,an:[0,2,6,9,11,13],anativepyfunct:1,andyettrysomethingels:4,ani:[0,1,6,9,12],anonym:1,anoth:[0,1,7,9,12],answer:9,apart:[0,1,7],api:[1,2,10],app:[0,4,5,6,12],appli:1,applic:[1,5,6],appropri:3,ar:[0,1,2,3,4,8,9,10,11,12,14],area:[5,6],arg:1,argument:[0,1,2,9],arithmet:3,ariti:0,arrai:[0,1,2,9],assert:[2,9],assign:[1,9],assum:1,async:[2,4],asynchron:4,asyncrx:14,attach:[0,1,2],attachmemb:0,attribut:0,authent:12,author:6,automat:[1,14],avail:[1,2,7,8],avoid:0,awai:7,await:2,awar:[0,1,12],awesom:1,b:1,backgroundimageurl:4,backgroundposit:4,backgrounds:4,bake:[4,5],banner:4,bar1:1,bar2:1,bar:[0,1],base:[1,6],basic:[1,7,8,12,13,14],batteri:4,baz:1,bcl:[0,2,10],beauti:5,becaus:[0,1,5,9,13],becom:[2,12],been:6,befor:[1,3,10,13,14],behav:0,behavior:[0,5,6,12],being:9,below:[1,12],better:1,between:[0,1,2,3],big:13,bigint:0,bind:[1,4,9,13],binder:4,bit:[0,2,3,12],bitwis:3,bodi:[4,9],book:8,bool:[1,2],both:[0,1],bound:[2,9],browser:[5,14],bug:[1,4],build:[1,4,5,6,7,13,14],built:4,bulid:11,bulma:4,bundl:[0,13],button:1,bypass:1,bytearrai:2,c:[1,9],cach:13,call:[4,7,9,12,14],can:[0,1,2,3,6,7,8,9,10,12,13,14],cancellationtoken:2,cannot:0,canva:1,capabl:5,card:4,case1:1,case2:1,case3:1,caserul:1,caus:0,cdnj:4,center:4,chain:1,chanc:1,chang:[0,1,3,4,9,13],chart:1,cheap:1,check:[0,1,2,4,6,8,10,14],checker:1,children:4,choic:[1,2,5,14],choos:4,clash:0,clean:0,clearli:14,cli:14,cloud:5,cloudflar:4,club:4,code:[0,1,2,4,5,6,7,9,13,14],collect:[0,2],color:4,com:[4,13],combin:1,come:[0,1,5,7],command:[10,12,13,14],commerci:5,common:[1,4,6,7],compani:5,companion:14,compar:5,compat:[3,4,6,10,14],compil:[0,1,2,4,5,12,13,14],compilednam:1,complement:3,complet:1,complex:[5,9],complic:10,compon:1,compulsori:14,concept:1,condit:[1,2,4,10],conf:1,config:[1,13],configur:13,conflict:0,confus:0,consequ:3,consid:[0,9],consol:[1,2],constant:[1,9],constructor:1,contain:[0,1,4,12,14],content:[1,10],continu:4,contract:1,contribut:8,control:14,conveni:1,convent:1,convers:[0,2,3],convert:[2,13],core:[0,1,4,6,10,14],correct:[1,3,4],correctli:[0,1,3],correspond:[1,2],cost:4,could:1,count:0,counterpart:0,coupl:10,cours:9,cover:4,coveragepathignorepattern:13,creat:[1,7,9,14],create_class:0,create_record:0,createclass:0,createempti:1,createinst:2,createmyclass:1,createobj:1,createrecord:0,css:[1,4],cssclass:4,cssmodul:1,current:[1,2,12,13],curri:0,custom:3,d:[0,1,14],data:[0,1,3,5],datamanag:1,datetim:[0,2,6],datetimeoffset:2,deal:1,debug:2,debugg:2,decid:[1,6,7],decim:[0,2,3],declar:[0,1,4,9],decor:[0,1],def:1,defacto:14,defin:[1,5,9],delet:1,demonstr:9,denot:1,depend:[6,7],depth:12,describ:[1,13],destructur:1,dev:13,develop:8,diagnost:2,diamond:4,dict:2,dictinari:1,dictionari:[0,1,2],did:1,differ:[0,1,2,3,6,9,12,13],difficult:[0,1],dir:13,directli:[1,6,14],disclaim:1,discov:1,dispos:0,distanc:4,div:4,doc:[7,13,14],document:[1,7,10,13,14],doe:[0,1,4,9,12],doesn:[0,1,5,13],doesnotcompileinf:2,doeswork:2,dom:14,domain:5,don:[7,9,10,12,13],done:[1,9],dotnet:[7,10,11,13,14],doubl:[3,5],download:14,draw_bubbl:1,draw_smilei:1,drawbubbl:1,drawsmilei:1,driven:8,dummi:1,dynamicextens:1,e:[2,6],each:13,easi:[1,4],easier:14,easili:[0,1,5],ecosystem:[4,5,12,13],edit:14,editedtodo:1,editor:[4,6],effect:[0,1,12],effort:6,either:1,element:1,els:[1,7,9],embed:3,en:13,end:[1,9,12],enjoi:[4,13],enough:7,entir:4,entri:12,enumer:1,environ:[6,7],equal:[0,1,13],equival:[1,7,9],eras:2,error:[4,14],es2015:12,especi:6,etc:[1,2,6],eval:1,even:[0,1],event:2,everi:[1,9,14],everyth:[0,1,10],exact:[1,3],exactli:1,exampl:[0,1,2,4,9,12,14],except:[0,2,3,12],exchang:0,execut:[0,12,13],exist:[1,9],expect:[0,1,2,3,9,10,13],explain:7,explan:7,explicit:[0,1,2],expos:0,express:[1,12],extend:4,extens:[1,12],extern:1,f:[0,3,4,6,7,8,9,11,12,14],fabl:[2,3,4,11,12,13],face:4,fact:7,fail:[0,6],failwithf:2,fake:[6,10],fashion:[1,12],favorit:4,featur:[0,1,2,5,13],fetch:[1,4],few:[2,10,12,14],ff:13,field:[0,1],file:[0,1,6,7,10,13],find:[0,1,6],fingertip:4,first:[0,1,4,12,13],fit:[3,5],fivetim:0,flag1:1,float32:3,fluent:1,folder:[1,10,12,14],follow:[0,1,2,9,12,14],foo:[0,1],forc:3,forget:1,format:[2,3,12,14],former:1,foundat:8,from:[2,3,4,6,7,9,12],fs:[1,10,14],fsharp:[6,10,14],fsi:10,fsproj:[6,7,10,11,14],fsx:[6,11],fulfil:10,fulli:[6,9],fullnam:2,fun:[0,1,8,9,13],func:0,further:1,g:[1,2,6],gener:[0,1,5,8,13],get:[0,1,3,8,14],getarea:5,getpi:1,getter:1,github:13,give:[0,1],global:1,go:[1,9],goal:9,good:[1,10,14],got:1,graphic:14,grasp:9,great:[5,14],group:1,guarante:[0,1],guid:[2,8],ha:[1,3,9,12],handi:0,happen:[9,12],happi:[6,7],hashset:[0,2],hassl:4,have:[0,1,3,6,12,13],heart:4,hei:1,height:1,help:1,henc:14,here:[0,1,4,9,12],hero:4,herobodi:4,hexadecim:3,hi:[6,7],hint:[1,4],hit:4,home:7,horizont:1,how:[0,6,7,9],howev:[0,2,6],html:4,http:[4,13],i:[1,13],ialert:1,icanva:1,id:[1,12,14],idea:[1,10],ident:3,identifi:9,ienumer:0,ignor:[1,12],ignorecas:1,immut:[4,5,9],impact:6,implement:[1,2,3],importal:1,importattribut:1,importdefault:1,importmemb:[0,1],importsideeffect:1,improv:[0,13],imyinterfac:[0,1],includ:[1,4,10,12,14],incomplet:4,incorrectli:0,incred:6,index:0,indic:[1,2,4,13],infer:4,inform:[0,2,13],inherit:2,inlin:[1,2],input:2,insert:1,insid:9,instal:[11,13],instanc:[0,1,2,9,12,14],instanti:1,instead:[1,3,9],int16:0,int32:3,int64:3,integ:[0,3,9],integr:7,intend:[1,8],interact:[0,6],interfac:[0,2,6,14],intern:[3,6],interop:[0,1,4],interoper:1,invok:1,involv:4,io:13,ionid:6,is_awesom:1,isarrai:1,isawesom:1,isdark:4,isfullheightwithnavbar:4,isn:1,issu:0,item:1,itemgroup:[10,12],iter:[0,2],its:[1,9,12],jack:4,javascript:[2,3,4,7],jester:13,jestj:13,jetbrain:[4,5],john:9,joy:6,js:[0,1,2,6,12,13],jsobject:1,json:[0,13,14],jsoption:1,just:[0,1,2,6,14],keep:10,keyvaluelist:1,keyword:1,king:4,know:[1,7,8],known:[6,7],lack:1,lambda:0,lang:[7,11],languag:[0,4,5,7,9],larg:[5,14],larger:3,last:[1,10,12],later:[7,9],lazi:2,learn:[2,5,6],least:1,length:[0,4,5],less:3,let:[0,2,3,4,5,10,12],letter:1,lib:[1,2,4,13],librari:[4,6,7],lightweight:[4,5],like:[0,1,2,4,6,8,10,12,14],likewis:2,limit:2,line:10,list:[0,1,2,4,7,12],liter:1,live:1,ll:[1,6,7,9,14],load:7,locat:[1,12],logger:1,look:[0,1,12],loss:3,lost:7,lot:[4,5,6],love:4,low:3,lower:[1,3],lowerfirst:1,luckili:12,m:[1,4],machin:5,macro:1,made:4,magic:6,magnitud:3,mai:[0,1,4,6,10,12],mailboxprocessor:2,main:[4,9],mainli:[0,1,8],maintabl:5,make:[0,1,3,4,6,10,14],manag:[1,6,14],mandatori:1,mani:[0,5,6,7,8,12],manifest:11,manual:[1,12],map:[0,1,2,6],mark:2,mask:3,match:[1,4,5],math:[1,2,6],matter:[0,1,10],matur:5,mayb:1,mean:[1,2,9,12],mechan:0,member:[0,1,2,4],mention:9,messag:1,method:[0,1,2],microsoft:[5,10,12],mimic:1,min:4,minimum:2,minut:14,miss:1,mitig:1,mocha:13,model:[1,4],modern:4,modul:[0,1,2,12,13],modulefileextens:13,more:[0,1,2,3,4,5,6,9,13],most:[0,2,6,7,12,14],motto:1,move:1,msbuild:10,much:[5,9,12],multipl:[0,3],multipli:3,must:[1,12],mutabl:0,my:[0,1,12],my_class:1,my_lib:1,my_method:1,my_py_lib:1,my_str:1,myawesomefeatur:12,myclass:[0,1],myclassstat:1,myconfig:1,mydata:1,mydatamanag:1,myeffect:0,myerasedtyp:1,myfunct:1,mylib:1,mylibrari:1,mymethod:1,mymodul:1,mymoduledefaultexport:1,myobject:1,myproject:12,myproperti:1,myrecord:0,mystr:1,name:[1,4,9,10,12,13],namespac:[0,1,6],nasti:1,nativ:[0,1,2],nativeonli:1,nearli:3,necessari:[1,12],need:[0,1,2,3,7,10,12,13,14],neg:3,nest:[0,2],net:[0,3,4,7,12,14],netstandard2:12,new_alu:1,new_valu:1,next:8,node:[13,14],node_modul:13,non:3,none:[1,2,4],nor:[2,9],normal:[1,9],note:[0,1,2,9,12,14],noth:[1,7],now:[1,12,13],npm:13,npx:13,nuget:[6,7,10,13,14],number:[0,1,3,4,14],numer:[0,2],o:[1,13],obj:1,object:5,obligatori:12,observ:2,occasion:1,offer:[5,14],offici:[1,13,14],often:[1,14],ok:[0,1,3],old:12,omit:14,onc:6,one:[0,1,9,12],onli:[0,1,2,4,7,8,9,10,12,13,14],onlin:4,oop:2,open:[0,1,4,13],oper:[0,1,2,3,4,12,14],operand:3,opt:[1,4],optim:1,option:[0,1,2,4],optionbuild:4,order:[0,1,2,3,10,12,14],origin:7,other:[0,4,8,9,12],otherwis:[1,6],our:[0,1,12],out:4,outdir:[1,13],output:[4,13],overcom:1,overflow:3,overhead:2,overload:[0,2],overrid:1,own:[1,4],pack:10,packag:[4,6,10,12,13,14],package_id:14,package_vers:14,packagepath:10,packagerefer:14,page:9,paket:[6,12,13],panel:0,panic:7,parallel:13,paramarrai:1,paramet:1,pars:[0,2],parseregex:1,part:[1,6],particularli:0,pascalcas:4,pass:[0,1],past:6,path:[12,13],pattern:[0,1,3,4,5,13],pep8:4,perform:[0,12,13],philosophi:1,pi:1,pick:14,place:12,placehold:1,plai:0,plan:0,pleas:[1,2,6,12,14],pleasant:5,plugin:13,pname:1,poetri:[1,7],point:[1,3,4,10,12],possibl:[0,1,2],post:2,postandasyncrepli:2,potenti:1,power:[0,4,5],preciou:1,precis:3,predefin:1,prefer:[1,13],prefix:0,prereleas:11,present:1,prevent:[0,1],primit:9,print:[1,9],printf:[1,3],printfn:[0,1,2,4,5,9],printnam:9,probabl:6,problem:[0,1],process:[1,14],produc:4,product:[3,6],profit:8,program:[4,5,6,8],progress:8,project:[6,7,10,11,13],promis:[1,7],pronounc:5,prop:[1,4],proper:1,properti:[0,1,2],propertygroup:12,propos:14,prototyp:2,provid:[2,6,12],publish:10,pure:1,purpos:5,put:[1,13],py:[1,7,11],py_object:1,pyinterop:[0,1],pyobject:1,pyoption:1,pypi:[4,6,7],pyproject:[1,7],pytest:[7,10],python:[2,3,8,10,11,12,13,14],qty:1,quantiti:1,queen:4,question:1,quit:[1,5,12],rais:1,random:2,rather:[1,9,13],re:[0,1,2,4,6,7,9],react:1,read:[5,13,14],readabl:[4,5],readi:[11,14],real:4,realiti:6,reassign:9,receiv:[0,1,2,9],recent:[12,14],recommend:1,record:[0,1,9],rectangl:5,redefin:9,reduc:0,refer:[1,12],referenc:12,regardless:12,regex:[0,1,2],regexp:1,regular:1,regularexpress:2,rel:12,relationship:12,reli:1,remain:1,rememb:0,remov:[0,1,12,14],repl:0,replac:1,replic:1,repres:[1,2,5],represent:[2,3],requir:[0,1,7,12,14],resizearrai:0,resourc:8,rest:[10,12],restor:14,restrict:[1,12],result:[0,1,2,3,13],rich:5,rider:[4,6,14],right:[7,9],risk:1,rng:3,robust:[4,5,6],root:[0,12,13],rootdir:13,rootmodul:0,roughli:1,round:3,routin:6,rule:[1,2],run:[1,5,6,7,14],runner:[7,10,13],runsynchron:2,runtim:[1,2,6],s:[0,2,3,4,5,6,7,9,10,11,12,14],sacrific:5,safe:[1,5],safer:5,safeti:4,sai:1,same:[0,1,9,12],sampl:14,save:13,schema:12,scienc:5,scope:9,script:[6,11,13],sdk:[12,14],second:[1,14],section:[2,4,6,8],see:[0,1,2,9,12,13],seem:6,seen:[0,1,3],self:1,semant:[3,6],send:[0,1],sendtopi:1,seq:[0,2],sequenc:1,server:[5,12],set:[0,1,2],set_valu:1,setter:1,sever:[1,6,13],shape:5,share:[0,12],sharednamespac:0,sharp:5,shift:3,shmew:13,should:[0,1,2,13],shouldn:[0,1],side:[1,5,12],sign:3,signatur:1,similar:[1,6,10],simpl:10,simplejson:14,simpler:12,simplest:10,simplic:5,sinc:[1,6,7,9,12],singl:[0,1,2,3,13],site:8,situat:[0,1],size:0,skeleton:12,skip:[1,8],slightli:1,sln:6,slow:13,slower:3,small:[3,13],smilei:1,snippet:9,so:[0,1,5,7,9,13,14],softwar:8,solut:[1,4,6],some:[0,1,2,4,7,9,12,14],some_str:1,somestr:1,someth:1,sometim:[0,1],sound:[1,10],sourc:[1,10,12],spade:4,specif:[1,4],specifi:[1,13],speedsumgroup:1,split:[1,9],sprintf:[2,3],squar:[0,5],src:[12,13],stabl:14,standard:[0,1,3,4,6,14],start:[0,1,2,14],starter:6,state:[1,12],staticmethod:1,step:[1,12],still:[1,2,8],storag:1,str:2,straightforward:14,string:[0,1,2,6,9],striplastnam:9,strongli:5,struct:2,structur:[0,9],studio:[4,6,14],style:[1,4],succinct:5,sugar:1,sum:1,supplement:4,support:[0,2,4,5,6],sure:10,syntax:[1,4,5],system:[0,1,2,5,6],t:[0,2,5,7,9,10,12,13],tag:12,take:[0,6,10,12,13,14],taken:1,target:[6,8,14],targetframework:12,task:[1,2,4],tell:[0,14],tend:6,tenofspad:4,test:[0,1,2,7],test_funct:0,testenviron:13,testmatch:13,testvalu:1,text:[1,2,4,9],than:[0,1,3,6,9,13],thank:1,thei:[0,1,2,3,6],them:[0,1,4,14],thi:[0,2,3,4,6,8,9,10,12,13,14],thing:[1,5,6,7,12,14],think:[0,5],thiswillfail:4,thiswork:4,those:[1,4],though:0,thread:2,three:4,through:[1,7],thu:[3,9],time:[0,1,4,11,13],timedelta:2,timeout:2,timer:2,timespan:2,toconsol:1,todo:1,toequal:13,togeth:1,told:1,toml:[1,7],too:9,tool:[1,4,5,6,7,11,13],tostr:3,tour:8,toward:0,transform:[1,13],translat:[1,2,3,12],transpil:[6,7],travers:0,tree:12,trigger_alert:1,triggeralert:1,truncat:3,trust:1,trysometh:4,trysomethingels:4,ts2fabl:1,tupl:[1,2],turn:6,two:[0,1,3,7,9,12,13],txt:4,type:[2,5,9],typedcssclass:4,typescript:1,u2:1,u3:1,ui:5,uint32:3,uint64:3,uint8:2,unbox:1,underli:[1,3],understand:[0,7],undeterminist:4,unexpect:0,union:1,unit:[0,1,7,10],unless:2,unlik:12,unlimit:3,until:1,untyp:1,up:[0,1],updat:1,url:4,us:[3,4,6,7,9,10,12,13],usabl:1,useeffect:0,usual:[1,14],v:[1,14],val:1,valu:[0,1,3,4,9],variabl:9,varieti:14,ve:1,venv:1,veri:[1,3,6,9],verifi:1,version:[12,14],vertic:1,visibl:1,visual:[4,6,14],wai:[1,3,10,14],want:[0,1,12],warn:[1,4],watchal:13,we:[0,1,3,5,6,7,9,12,13,14],weak:1,web:[4,5,6],webpack:13,well:[2,6,7],were:0,what:[0,2,9,14],whatdoiget:1,when:[0,2,3,5],whenev:13,where:[0,1,12],which:[0,1,2,3,5,6,7,9,12,14],whole:[3,4],whose:1,why:1,width:[1,5],wish:[1,7],within:[3,9],without:[0,1,3,4,14],won:[0,2,7],wonder:6,work:[0,1,8,10,14],world:4,worri:9,would:[1,6,9],wrap:1,write:[1,5,10],writelin:2,x:[0,1,2,4,9],xml:12,xs:1,y:[0,1,4,9],you:[0,1,2,5,8,9,10,11,12,13,14],youhou:13,your:[0,1,4,6,7,10,11,12,13],yourself:4,z:[1,4],zaid:13,zanaptak:4},titles:["Call Fable from Python","Call Python from Fable",".NET and F# compatibility","Numeric types","Python you can be proud of","What is Fable?","Are you a .NET developer?","Are you a Python developer?","Learning the language","The let keyword","Author a Fable library","Build & run","The project file","Testing","Use a Fable library"],titleterms:{"1":14,"1st":1,"2":14,"2nd":1,"class":[1,2],"do":1,"function":0,"import":1,"try":1,The:[9,12],ad:1,add:12,an:[1,12],ar:[6,7],attribut:1,author:10,automat:0,base:2,behaviour:0,bring:6,build:11,call:[0,1],can:4,cast:1,caveat:2,common:0,compar:9,compat:2,comput:4,core:2,creat:12,custom:0,definit:1,deleg:0,develop:[6,7],directori:1,disambigu:0,don:1,dynam:1,emit:1,enough:1,environ:11,eras:1,exampl:13,express:4,f:[1,2,5],fabl:[0,1,5,6,7,10,14],familiar:6,featur:4,file:[12,14],from:[0,1],fs:12,fsharp:2,fsproj:12,gener:2,helper:1,ii:2,iii:2,inherit:1,interfac:1,javascript:1,jest:13,keyword:9,languag:8,learn:8,let:[1,9],librari:[1,2,10,14],mangl:0,manual:14,measur:4,miscellan:1,mode:13,name:0,net:[2,6],next:5,numer:3,object:[0,1,2],old:1,oop:1,option:14,orient:2,other:1,output:1,paket:14,path:1,plain:1,practic:1,print:3,program:2,project:[1,5,12,14],proud:4,provid:4,python:[0,1,4,5,6,7,9],read:1,refer:[9,14],reflect:2,rel:1,run:[11,13],s:1,safeti:1,setup:[11,13],shadow:9,some:6,special:1,stringenum:1,t:1,test:[10,13],thi:1,type:[0,1,3,4],uncurri:0,unit:4,us:[0,1,5,14],watch:13,welcom:7,what:[1,5],when:1,why:5,workaround:3,write:13,you:[4,6,7],your:[5,14]}})
\ No newline at end of file
+Search.setIndex({docnames:["2-steps/setup","2-steps/your-first-fable-project","communicate/fable-from-py","communicate/py-from-fable","dotnet/compatibility","dotnet/numbers","index","intro","introduction/dotnet-users-read-this","introduction/py-users-read-this","new-to-fsharp/learning-the-language","new-to-fsharp/let-keyword","your-fable-project/author-a-fable-library","your-fable-project/build-and-run","your-fable-project/project-file","your-fable-project/testing","your-fable-project/use-a-fable-library"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinxcontrib.bibtex":9,sphinx:56},filenames:["2-steps/setup.md","2-steps/your-first-fable-project.md","communicate/fable-from-py.md","communicate/py-from-fable.md","dotnet/compatibility.md","dotnet/numbers.md","index.md","intro.md","introduction/dotnet-users-read-this.md","introduction/py-users-read-this.md","new-to-fsharp/learning-the-language.md","new-to-fsharp/let-keyword.md","your-fable-project/author-a-fable-library.md","your-fable-project/build-and-run.md","your-fable-project/project-file.md","your-fable-project/testing.md","your-fable-project/use-a-fable-library.md"],objects:{},objnames:{},objtypes:{},terms:{"0":[3,5,6,7,11,14,16],"0u":5,"0x0100_0000_2000_0000":5,"0x2000_0000":5,"0x2000_0001":5,"1":[2,3,5,15],"10":6,"10001":5,"12":6,"12345":5,"14":3,"15":2,"16":5,"2":[2,3,5,7,15],"24":3,"25":2,"28":5,"3":[1,2,3,6,9],"32":5,"4":[2,3],"40":3,"42":[3,11],"480":3,"5":[2,3,4],"500":4,"53":5,"6":[3,6,16],"64":[4,5],"7":3,"768":3,"8":[3,5],"8080":1,"9":[6,9],"99":3,"\u5bb6":2,"abstract":[2,3,4],"boolean":[2,4],"break":4,"byte":4,"case":[2,3,4,6,9,11,16],"catch":6,"char":[2,4],"class":[2,6,8],"const":11,"default":[2,3,4,6,7,11],"do":[4,11,12,14,16],"export":[3,15],"float":[2,3,4,5],"function":[3,4,6,7,11],"import":[2,8,14],"int":[2,3,4,6,11],"long":[2,3,5,11],"new":[2,3,11,13,14],"public":3,"return":[2,3,6],"static":[3,4],"switch":2,"true":3,"try":[2,6,8,9,11],"typeof":[3,4],"var":[2,3,11],"voil\u00e0":9,"while":16,A:[0,2,3,6],And:[3,7,9,11,15,16],As:[2,3],But:[2,9,16],By:3,For:[0,1,2,3,6,8,11,14,16],If:[1,2,3,10,13,16],In:[0,2,3,5,9,11,12],It:[2,3,4,7,12],No:4,Of:[6,11],One:5,That:[3,12,16],The:[1,2,3,4,5,6,7,8,12,16],Then:13,There:[2,3,4,6,8,9,10,16],These:[3,6,8],To:[2,3,12,14],Will:11,_:[2,3,6,14],__:[2,3,6],__all__:3,__init__:3,_awesom:3,_valu:3,abc:3,abl:[3,15],about:[1,4,10],abov:[0,2,3,6,11,14],abus:3,ac:6,accept:[2,3],access:[1,3,4],account:2,accur:5,aceofheart:6,achiev:3,activ:4,actual:[2,3,4],ad:[12,14,16],add:[2,3,8,11,12,15,16],addit:6,adifferentnam:3,adjust:3,advantag:[2,14,15],advis:3,affect:8,after:[1,3,11],against:[3,4,16],ajaj:15,ajax:6,alert:3,alia:[1,3],all:[2,3,4,5,8,9,12,14,15,16],allow:[2,3],alreadi:[1,3,7,10,11,14,15],also:[1,2,3,4,6,7,8,10,11,12,16],altern:[1,5,12],although:[3,5,8],alwai:3,ambigu:2,amongst:3,an:[0,1,2,4,8,11,13,15],anativepyfunct:3,andyettrysomethingels:6,ani:[2,3,8,11,14],anonym:3,anoth:[2,3,9,11,14],answer:11,anybodi:1,apart:[2,3,9],api:[3,4,12],app:[2,6,7,8,14],appli:[1,3],applic:[3,7,8],appropri:5,ar:[0,1,2,3,4,5,6,10,11,12,13,14,16],area:[7,8],arg:3,argument:[2,3,4,11],arithmet:5,ariti:2,arrai:[2,3,4,11],assert:[4,11],assign:[3,11],assum:3,async:[4,6],asynchron:6,asyncrx:16,attach:[2,3,4],attachmemb:2,attribut:2,authent:14,author:8,autocomplet:0,automat:[1,3,16],avail:[3,4,9,10],avoid:2,awai:9,await:4,awar:[2,3,14],awesom:3,b:3,backend:1,background:1,backgroundimageurl:6,backgroundposit:6,backgrounds:6,bake:[6,7],banner:6,bar1:3,bar2:3,bar:[2,3],base:[3,8],basic:[0,3,9,10,14,15,16],batteri:6,baz:3,bcl:[2,4,12],beauti:7,becaus:[2,3,7,11,15],becom:[4,14],been:8,befor:[3,5,12,15,16],behav:2,behavior:[2,7,8,14],being:11,below:[3,14],better:3,between:[2,3,4,5],big:15,bigint:2,bind:[0,3,6,11,15],binder:6,bit:[2,4,5,14],bitwis:5,bodi:[6,11],book:10,bool:[3,4],both:[1,2,3],bound:[4,11],browser:[1,7,16],bug:[3,6],build:[3,6,7,8,9,15,16],built:6,bulid:13,bulma:6,bundl:[2,15],button:3,bypass:3,bytearrai:4,c:[3,11],cach:15,call:[6,9,11,14,16],can:[1,2,3,4,5,8,9,10,11,12,14,15,16],cancellationtoken:4,cannot:2,canva:3,capabl:7,card:6,case1:3,case2:3,case3:3,caserul:3,caus:2,cdnj:6,center:6,chain:3,chanc:3,chang:[1,2,3,5,6,11,15],chart:3,cheap:3,check:[1,2,3,4,6,8,10,12,16],checker:3,children:6,choic:[3,4,7,16],choos:6,clash:2,clean:2,clearli:16,cli:16,clone:1,cloud:7,cloudflar:6,club:6,code:[0,2,3,4,6,7,8,9,11,15,16],collect:[2,4],color:6,com:[6,15],combin:3,come:[0,2,3,7,9],command:[1,12,14,15,16],commerci:7,commit:1,common:[3,6,8,9],compani:7,companion:16,compar:7,compat:[5,6,8,12,16],compil:[2,3,4,6,7,14,15,16],compilednam:3,complement:5,complet:3,complex:[7,11],complic:12,compon:3,comprehens:1,compulsori:16,concept:3,condit:[3,4,6,12],conf:3,config:[3,15],configur:15,conflict:2,confus:2,consequ:5,consid:[0,2,11],consol:[1,3,4],constant:[3,11],constructor:3,contain:[2,3,6,14,16],content:[3,12],continu:6,contract:3,contribut:10,control:16,conveni:3,convent:3,convers:[2,4,5],convert:[4,15],core:[0,2,3,6,8,12,16],correct:[3,5,6],correctli:[2,3,5],correspond:[3,4],cost:6,could:3,count:2,counterpart:2,coupl:12,cours:11,cover:[1,6],coveragepathignorepattern:15,creat:[1,3,9,11,16],create_class:2,create_record:2,createclass:2,createempti:3,createinst:4,createmyclass:3,createobj:3,createrecord:2,css:[3,6],cssclass:6,cssmodul:3,current:[3,4,14,15],curri:2,custom:5,d:[2,3,16],data:[2,3,5,7],datamanag:3,date:1,datetim:[2,4,8],datetimeoffset:4,deal:3,debug:4,debugg:4,decid:[3,8,9],decim:[2,4,5],declar:[2,3,6,11],decor:[2,3],def:3,defacto:16,defin:[3,7,11],delet:3,demonstr:11,denot:3,depend:[0,8,9],depth:14,describ:[3,15],destructur:3,dev:[1,15],develop:10,diagnost:4,diamond:6,dict:4,dictinari:3,dictionari:[2,3,4],did:3,differ:[1,2,3,4,5,8,11,14,15],difficult:[2,3],dir:15,directli:[3,8,16],directori:1,disclaim:3,discov:3,dispos:2,distanc:6,div:6,doc:[9,15,16],document:[1,3,9,12,15,16],doe:[2,3,6,11,14],doesn:[2,3,7,15],doesnotcompileinf:4,doeswork:4,dom:16,domain:7,don:[9,11,12,14,15],done:[1,3,11],dotnet:[1,9,12,13,15,16],doubl:[5,7],download:[1,16],draw_bubbl:3,draw_smilei:3,drawbubbl:3,drawsmilei:3,driven:10,dummi:3,dynamicextens:3,e:[4,8],each:[1,15],eas:0,easi:[3,6],easier:16,easiest:1,easili:[2,3,7],ecosystem:[6,7,14,15],edit:16,editedtodo:3,editor:[0,6,8],effect:[2,3,14],effort:8,either:3,element:3,els:[3,9,11],emac:0,embed:5,en:15,end:[3,11,14],enjoi:[6,15],enough:9,ensur:1,entir:6,entri:14,enumer:3,environ:[8,9],equal:[2,3,15],equival:[3,9,11],eras:4,error:[1,6,16],es2015:14,especi:8,etc:[1,3,4,8],eval:3,even:[2,3],event:4,everi:[3,11,16],everyth:[2,3,12],exact:[3,5],exactli:3,exampl:[1,2,3,4,6,11,14,16],except:[2,4,5,14],exchang:2,execut:[0,2,14,15],exist:[3,11],expect:[2,3,4,5,11,12,15],explain:9,explan:9,explicit:[2,3,4],expos:2,express:[3,14],extend:6,extens:[3,14],extern:3,f:[0,1,2,5,6,8,9,10,11,13,14,16],fabl:[0,4,5,6,13,14,15],face:6,fact:9,fail:[2,8],failwithf:4,fake:[8,12],fashion:[3,14],favorit:[1,6],featur:[0,2,3,4,7,15],feliz:1,femto:0,fetch:[3,6],few:[1,4,12,14,16],ff:15,field:[2,3],file:[0,1,2,3,8,9,12,15],find:[2,3,8],fingertip:6,first:[1,2,3,6,14,15],fit:[5,7],fivetim:2,flag1:3,float32:5,fluent:3,folder:[1,3,12,14,16],follow:[0,1,2,3,4,11,14,16],foo:[2,3],forc:5,forget:3,format:[4,5,14,16],former:3,foundat:10,from:[4,5,6,8,9,11,14],frontend:1,fs:[1,3,12,16],fsharp:[0,8,12,16],fsi:12,fsproj:[1,8,9,12,13,16],fsx:[8,13],fulfil:12,fulli:[1,8,11],fullnam:4,fun:[2,3,10,11,15],func:2,further:3,g:[3,4,8],gener:[2,3,7,10,15],get:[1,2,3,5,10,16],getarea:7,getpi:3,getter:3,github:15,give:[2,3],global:3,go:[1,3,11],goal:11,good:[3,12,16],got:3,graphic:16,grasp:11,great:[7,16],group:3,guarante:[2,3],guid:[4,10],ha:[3,5,11,14],handi:2,happen:[11,14],happi:[8,9],hashset:[2,4],hassl:6,have:[0,2,3,5,8,14,15],haven:1,heart:6,hei:3,height:3,help:3,henc:16,here:[1,2,3,6,11,14],hero:6,herobodi:6,hexadecim:5,hi:[8,9],highlight:0,hint:[0,3,6],hit:6,home:9,horizont:3,hover:0,how:[1,2,8,9,11],howev:[2,4,8],html:6,http:[1,6,15],i:[3,15],ialert:3,icanva:3,id:[3,14,16],idea:[3,12],ident:5,identifi:11,ienumer:2,ignor:[3,14],ignorecas:3,immut:[6,7,11],impact:8,implement:[3,4,5],importal:3,importattribut:3,importdefault:3,importmemb:[2,3],importsideeffect:3,improv:[2,15],imyinterfac:[2,3],includ:[3,6,12,14,16],incomplet:6,incorrectli:2,incred:8,index:2,indic:[3,4,6,15],infer:6,inform:[2,4,15],inherit:4,inlin:[3,4],input:4,insert:3,insid:11,instal:[13,15],instanc:[2,3,4,11,14,16],instanti:3,instead:[3,5,11],instruct:1,int16:2,int32:5,int64:5,integ:[2,5,11],integr:9,intend:[3,10],interact:[2,8],interfac:[2,4,8,16],intern:[5,8],interop:[2,3,6],interoper:3,invok:3,involv:6,io:15,ionid:[0,8],is_awesom:3,isarrai:3,isawesom:3,isdark:6,isfullheightwithnavbar:6,isn:3,issu:2,item:3,itemgroup:[12,14],iter:[2,4],its:[3,11,14],jack:6,javascript:[4,5,6,9],jester:15,jestj:15,jetbrain:[0,6,7],john:11,joy:8,js:[0,1,2,3,4,8,14,15],jsobject:3,json:[1,2,15,16],jsoption:3,just:[1,2,3,4,8,16],keep:12,keyvaluelist:3,keyword:3,kill:1,kind:1,king:6,know:[3,9,10],known:[8,9],lack:3,lambda:2,lang:[9,13],languag:[2,6,7,9,11],larg:[7,16],larger:5,last:[3,12,14],later:[9,11],lazi:4,learn:[1,4,7,8],least:3,length:[2,6,7],less:5,let:[0,1,2,4,5,6,7,12,14],letter:3,lib:[3,4,6,15],librari:[1,6,8,9],lightweight:[6,7],like:[0,1,2,3,4,6,8,10,12,14,16],likewis:4,limit:4,line:12,list:[1,2,3,4,6,9,14],liter:3,live:3,ll:[3,8,9,11,16],load:9,localhost:1,locat:[3,14],lock:1,logger:3,look:[2,3,14],loss:5,lost:9,lot:[6,7,8],love:6,low:5,lower:[3,5],lowerfirst:3,luckili:14,m:[3,6],mac:0,machin:7,macro:3,made:6,magic:8,magnitud:5,mai:[0,2,3,6,8,12,14],mailboxprocessor:4,main:[6,11],mainli:[2,3,10],maintabl:7,make:[2,3,5,6,8,12,16],manag:[0,3,8,16],mandatori:3,mani:[0,2,7,8,9,10,14],manifest:13,manual:[3,14],map:[2,3,4,8],mark:4,mask:5,match:[3,6,7],math:[3,4,8],matter:[2,3,12],matur:7,mayb:3,md:1,mean:[3,4,11,14],mechan:2,member:[2,3,4,6],mention:11,messag:3,method:[2,3,4],microsoft:[7,12,14],mimic:3,min:6,minim:1,minimum:4,minut:16,miss:3,mitig:3,mocha:15,mode:[0,1],model:[3,6],modern:6,modul:[2,3,4,14,15],modulefileextens:15,more:[1,2,3,4,5,6,7,8,11,15],most:[2,4,8,9,14,16],motto:3,move:3,msbuild:12,much:[7,11,14],multipl:[2,5],multipli:5,must:[3,14],mutabl:2,my:[2,3,14],my_class:3,my_lib:3,my_method:3,my_py_lib:3,my_str:3,myawesomefeatur:14,myclass:[2,3],myclassstat:3,myconfig:3,mydata:3,mydatamanag:3,myeffect:2,myerasedtyp:3,myfunct:3,mylib:3,mylibrari:3,mymethod:3,mymodul:3,mymoduledefaultexport:3,myobject:3,myproject:14,myproperti:3,myrecord:2,mystr:3,name:[3,6,11,12,14,15],namespac:[2,3,8],nasti:3,nativ:[2,3,4],nativeonli:3,navig:1,nearli:5,necessari:[3,14],need:[0,1,2,3,4,5,9,12,14,15,16],neg:5,nest:[2,4],net:[0,1,2,5,6,9,14,16],netstandard2:14,new_alu:3,new_valu:3,next:10,node:[0,15,16],node_modul:[1,15],nodej:1,non:5,none:[3,4,6],nor:[4,11],normal:[3,11],note:[2,3,4,11,14,16],noth:[1,3,9],now:[1,3,14,15],npm:[0,1,15],npx:15,nuget:[8,9,12,15,16],number:[2,3,5,6,16],numer:[2,4],o:[3,15],obj:3,object:7,obligatori:14,observ:4,occasion:3,offer:[7,16],offici:[3,15,16],often:[3,16],ok:[2,3,5],old:14,omit:16,onc:8,one:[1,2,3,11,14],onli:[1,2,3,4,6,9,10,11,12,14,15,16],onlin:6,oop:4,open:[2,3,6,15],oper:[2,3,4,5,6,14,16],operand:5,opt:[3,6],optim:3,option:[2,3,4,6],optionbuild:6,order:[0,2,3,4,5,12,14,16],origin:9,other:[2,6,10,11,14],otherwis:[3,8],our:[2,3,14],out:6,outdir:[3,15],output:[1,6,15],overcom:3,overflow:5,overhead:4,overload:[2,4],overrid:3,own:[3,6],pack:12,packag:[0,1,6,8,12,14,15,16],package_id:16,package_vers:16,packagepath:12,packagerefer:16,page:[1,11],paket:[1,8,14,15],panel:2,panic:9,parallel:15,paramarrai:3,paramet:3,pars:[2,4],parseregex:3,part:[3,8],particularli:2,pascalcas:6,pass:[2,3],past:8,path:[14,15],pattern:[2,3,5,6,7,15],pep8:6,perform:[2,14,15],philosophi:3,pi:3,pick:16,place:14,placehold:3,plai:2,plan:2,pleas:[1,3,4,8,14,16],pleasant:7,plugin:15,pname:3,poetri:[3,9],point:[3,5,6,12,14],possibl:[2,3,4],post:4,postandasyncrepli:4,potenti:3,power:[2,6,7],preciou:3,precis:5,predefin:3,prefer:[3,15],prefix:2,prereleas:13,present:3,prevent:[2,3],primit:11,print:[3,11],printf:[3,5],printfn:[2,3,4,6,7,11],printnam:11,probabl:8,problem:[2,3],process:[3,16],produc:6,product:[5,8],profit:10,program:[6,7,8,10],progress:10,project:[8,9,12,13,15],promis:[3,9],pronounc:7,prop:[3,6],proper:3,properti:[2,3,4],propertygroup:14,propos:16,prototyp:4,provid:[4,8,14],publish:12,pure:3,purpos:7,put:[3,15],py:[3,9,13],py_object:3,pyinterop:[2,3],pyobject:3,pyoption:3,pypi:[6,8,9],pyproject:[3,9],pytest:[9,12],python:[4,5,10,12,13,14,15,16],qty:3,quantiti:3,queen:6,question:3,quit:[3,7,14],rais:3,random:4,rather:[3,11,15],re:[1,2,3,4,6,8,9,11],react:[1,3],read:[7,15,16],readabl:[6,7],readi:[1,13,16],readm:1,real:6,realiti:8,reassign:11,rebuild:1,receiv:[2,3,4,11],recent:[14,16],recommend:3,record:[2,3,11],rectangl:7,redefin:11,reduc:2,refer:[3,14],referenc:14,refresh:1,regardless:14,regex:[2,3,4],regexp:3,regular:3,regularexpress:4,rel:14,relationship:14,reli:3,remain:3,rememb:2,remov:[2,3,14,16],repl:2,replac:3,replic:3,repo:1,repositori:1,repres:[3,4,7],represent:[4,5],reproduc:1,requir:[2,3,9,14,16],resizearrai:2,resourc:10,rest:[1,12,14],restor:[1,16],restrict:[3,14],result:[2,3,4,5,15],rich:7,rider:[0,6,8,16],right:[9,11],risk:3,rng:5,robust:[6,7,8],root:[2,14,15],rootdir:15,rootmodul:2,roughli:3,round:5,routin:8,rule:[3,4],run:[3,7,8,9,16],runner:[9,12,15],runsynchron:4,runtim:[3,4,8],s:[1,2,4,5,6,7,8,9,11,12,13,14,16],sacrific:7,safe:[1,3,7],safer:7,safeti:6,sai:3,same:[2,3,11,14],sampl:[1,16],save:[1,15],schema:14,scienc:7,scope:11,script:[1,8,13,15],sdk:[0,14,16],second:[1,3,16],section:[1,4,6,8,10],see:[1,2,3,4,11,14,15],seem:8,seen:[2,3,5],self:3,semant:[5,8],send:[2,3],sendtopi:3,seq:[2,4],sequenc:3,server:[1,7,14],set:[2,3,4],set_valu:3,setter:3,sever:[3,8,15],shape:7,share:[2,14],sharednamespac:2,sharp:7,shift:5,ship:1,shmew:15,should:[1,2,3,4,15],shouldn:[2,3],side:[1,3,7,14],sign:5,signatur:3,similar:[3,8,12],simpl:12,simplejson:16,simpler:14,simplest:12,simplic:7,sinc:[3,8,9,11,14],singl:[2,3,4,5,15],site:10,situat:[2,3],size:2,skeleton:14,skip:[3,10],slightli:3,sln:8,slow:15,slower:5,small:[5,15],smilei:3,snippet:11,so:[0,2,3,7,9,11,15,16],softwar:10,solut:[3,6,8],some:[2,3,4,6,9,11,14,16],some_str:3,somestr:3,someth:3,sometim:[2,3],sound:[3,12],sourc:[1,3,12,14],spacemac:0,spade:6,specif:[1,3,6],specifi:[3,15],speed:1,speedsumgroup:3,split:[3,11],sprintf:[4,5],squar:[2,7],src:[1,14,15],stabl:16,standard:[2,3,5,6,8,16],start:[2,3,4,16],starter:8,state:[3,14],staticmethod:3,step:[3,14],still:[3,4,10],storag:3,str:4,straightforward:16,string:[2,3,4,8,11],striplastnam:11,strongli:7,struct:4,structur:[2,11],studio:[0,6,8,16],style:[0,3,6],succe:1,succinct:7,sugar:3,suit:0,sum:3,supplement:6,support:[2,4,6,7,8],sure:12,sutil:1,syntax:[0,3,6,7],system:[1,2,3,4,7,8],t:[1,2,4,7,9,11,12,14,15],tag:14,take:[2,8,12,14,15,16],taken:3,target:[8,10,16],targetframework:14,task:[3,4,6],tell:[2,16],tend:8,tenofspad:6,test:[1,2,3,4,9],test_funct:2,testenviron:15,testmatch:15,testvalu:3,text:[3,4,6,11],than:[2,3,5,8,11,15],thank:3,thei:[2,3,4,5,8],them:[0,1,2,3,6,16],thi:[1,2,4,5,6,8,10,11,12,14,15,16],thing:[3,7,8,9,14,16],think:[2,7],thiswillfail:6,thiswork:6,those:[3,6],though:2,thread:4,three:6,through:[3,9],thu:[5,11],time:[1,2,3,6,13,15],timedelta:4,timeout:4,timer:4,timespan:4,toconsol:3,todo:3,toequal:15,togeth:3,told:3,toml:[3,9],too:11,tool:[1,3,6,7,8,9,13,15],tostr:5,tour:10,toward:2,transform:[3,15],translat:[3,4,5,14],transpil:[8,9],travers:2,tree:14,trigger_alert:3,triggeralert:3,truncat:5,trust:3,trysometh:6,trysomethingels:6,ts2fabl:3,tupl:[3,4],turn:8,two:[2,3,5,9,11,14,15],txt:6,type:[4,7,11],typedcssclass:6,typescript:3,u2:3,u3:3,ui:7,uint32:5,uint64:5,uint8:4,unbox:3,underli:[3,5],understand:[2,9],undeterminist:6,unexpect:2,union:3,unit:[2,3,9,12],unless:4,unlik:14,unlimit:5,until:[1,3],untyp:3,up:[1,2,3],updat:3,url:6,us:[0,5,6,8,9,11,12,14,15],usabl:3,useeffect:2,usual:[3,16],v:[3,16],val:3,valu:[2,3,5,6,11],variabl:11,varieti:16,ve:[1,3],venv:3,veri:[3,5,8,11],verifi:3,version:[14,16],vertic:3,vim:0,visibl:3,visual:[0,6,8,16],wai:[1,3,5,12,16],want:[1,2,3,14],warn:[3,6],watch:1,watchal:15,we:[1,2,3,5,7,8,9,11,14,15,16],weak:3,web:[1,6,7,8],webpack:[1,15],well:[4,8,9],were:2,what:[2,4,11,16],whatdoiget:3,when:[2,4,5,7],whenev:[1,15],where:[2,3,14],which:[0,1,2,3,4,5,7,8,9,11,14,16],whole:[5,6],whose:3,why:3,width:[3,7],window:0,wish:[3,9],within:[5,11],without:[1,2,3,5,6,16],won:[2,4,9],wonder:8,work:[0,2,3,10,12,16],world:6,worri:11,would:[3,8,11],wrap:3,write:[1,3,7,12],writelin:4,x:[2,3,4,6,11],xml:14,xs:3,y:[2,3,6,11],yarn:0,yet:1,you:[0,1,2,3,4,7,10,11,12,13,14,15,16],youhou:15,your:[0,1,2,3,6,8,9,12,13,14,15],yourself:6,z:[3,6],zaid:15,zanaptak:6},titles:["Setup","Start a new project","Call Fable from Python","Call Python from Fable",".NET and F# compatibility","Numeric types","Python you can be proud of","What is Fable?","Are you a .NET developer?","Are you a Python developer?","Learning the language","The let keyword","Author a Fable library","Build & run","The project file","Testing","Use a Fable library"],titleterms:{"1":16,"1st":3,"2":16,"2nd":3,"class":[3,4],"do":3,"function":2,"import":3,"new":1,"try":3,The:[11,14],ad:3,add:14,an:[3,14],app:1,ar:[8,9],attribut:3,author:12,automat:2,base:4,behaviour:2,bring:8,build:[1,13],call:[2,3],can:6,cast:3,caveat:4,common:2,compar:11,compat:4,comput:6,core:4,creat:14,custom:2,definit:3,deleg:2,depend:1,develop:[0,8,9],directori:3,disambigu:2,don:3,dynam:3,emit:3,enough:3,environ:13,eras:3,exampl:15,express:6,f:[3,4,7],fabl:[1,2,3,7,8,9,12,16],familiar:8,featur:6,file:[14,16],from:[2,3],fs:14,fsharp:4,fsproj:14,gener:4,helper:3,ii:4,iii:4,inherit:3,instal:1,interfac:3,javascript:3,jest:15,keyword:11,languag:10,learn:10,let:[3,11],librari:[3,4,12,16],mangl:2,manual:16,measur:6,miscellan:3,mode:15,name:2,net:[4,8],next:7,numer:5,object:[2,3,4],old:3,oop:3,option:16,orient:4,other:3,output:3,paket:16,path:3,plain:3,practic:3,prerequisit:0,print:5,program:4,project:[1,3,7,14,16],proud:6,provid:6,python:[2,3,6,7,8,9,11],read:3,refer:[11,16],reflect:4,rel:3,run:[1,13,15],s:3,safeti:3,setup:[0,13,15],shadow:11,some:8,special:3,start:1,stringenum:3,t:3,templat:1,test:[12,15],thi:3,tool:0,type:[2,3,5,6],uncurri:2,unit:6,us:[1,2,3,7,16],watch:15,welcom:9,what:[3,7],when:3,why:7,workaround:5,write:15,you:[6,8,9],your:[7,16]}})
\ No newline at end of file
diff --git a/docs/your-fable-project/author-a-fable-library.html b/docs/your-fable-project/author-a-fable-library.html
index 4d7534e..37a010a 100644
--- a/docs/your-fable-project/author-a-fable-library.html
+++ b/docs/your-fable-project/author-a-fable-library.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/your-fable-project/build-and-run.html b/docs/your-fable-project/build-and-run.html
index fece7ae..8417f59 100644
--- a/docs/your-fable-project/build-and-run.html
+++ b/docs/your-fable-project/build-and-run.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/your-fable-project/project-file.html b/docs/your-fable-project/project-file.html
index cf663de..05fe9e1 100644
--- a/docs/your-fable-project/project-file.html
+++ b/docs/your-fable-project/project-file.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/your-fable-project/testing.html b/docs/your-fable-project/testing.html
index 3b91bf6..0515ad4 100644
--- a/docs/your-fable-project/testing.html
+++ b/docs/your-fable-project/testing.html
@@ -139,6 +139,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python
diff --git a/docs/your-fable-project/use-a-fable-library.html b/docs/your-fable-project/use-a-fable-library.html
index 2149b0c..5e63ce3 100644
--- a/docs/your-fable-project/use-a-fable-library.html
+++ b/docs/your-fable-project/use-a-fable-library.html
@@ -138,6 +138,16 @@ Fable Python
The let keyword
+
+
+ Setup
+
+
+
+
+ Start a new project
+
+
Call Fable from Python