This explorable illustrates the phenomenon of percolation, when e.g. a liquid like water moves through a porous medium, like coffee. The percolation process is a critical phenomenon that exhibits interesting properties at the critical porosity of the medium.
The explorable is part of the Complexity Exporables Collection. For more information about the system and its behavior consult the explorable
If you just want to run the explorable you can Click here.
If you want to run a local copy without having to rely on the nasty internet, the best way
is to install it via npm
:
npm install @explorables/baristas_secret
open node_modules/@explorables/baristas_secret/dist/index.html
If you want to embed the explorable in your site, you need to do three things:
- load the explorable package via
<script>
tag in your page header - add a
<div>
container element - add a
<script>
at the end of the document that loads the explorable
like so:
<!doctype html>
<html>
<head>
...
<script src="https://cdn.jsdelivr.net/npm/@explorables/baristas_secret/dist/index.umd.js"></script>
...
</head>
...
<body>
...
<div id="explorable_container"></div>
...
</body>
...
<script type="text/javascript">
const explorable_instance = baristas_secret.load("explorable_container")
</script>
...
</html>
The header <script>
tag loads the bundle, the <div>
in the document is the container in which the explorable gets anchored when the function baristas_secret("explorable_container")
gets executed at the bottom. This function needs the <div>
container id
as an argument. The function returns an instance of the explorable and writes it to explorable_instance
. That variable contains functions like halt()
, reset()
and variables meta
and config
.
If you want to make use of ES modules instead of UMD, here's a way that will work on modern (ES support) and legacy browsers (UMD only).
<!doctype html>
<html>
<head>
...
<script type="module">
import load from 'https://cdn.jsdelivr.net/npm/@explorables/baristas_secret/dist/index.es.js';
const baristas_secret = load("explorable_container");
</script>
<script nomodule src="https://cdn.jsdelivr.net/npm/@explorables/baristas_secret/dist/index.umd.js"></script>
...
</head>
...
<body>
...
<div id="explorable_container"></div>
...
</body>
...
<script nomodule type="text/javascript">
const explorable_instance = baristas_secret.load("explorable_container")
</script>
...
</html>
If you want to modify or edit the explorable to make your own version:
Clone repository:
git clone https://github.com/dirkbrockmann/baristas_secret.git
Go to the directory, install, build and show using npm
:
cd baristas_secret
npm install
npm run build
npm run preview
This work is licensed under a Creative Commons Attribution 4.0 International License.