npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@explorables/into_the_dark

v2.0.18

Published

This explorable illustrates the emergence of collective intelligence in a model for a school of fish. The combination of speed differences in the light and the dark and cohesive swarm forces helps the swarm find the safe regions.

Readme

Into the Dark

CC BY 4.0

This explorable illustrates the emergence of collective intelligence in a model for a school of fish. The combination of speed differences in the light and the dark and cohesive swarm forces helps the swarm find the safe regions.

The explorable is part of the Complexity Explorables Collection. For more information about the system and its behavior consult the explorable

“Into the Dark” - Collective intelligence

Usage & Installation

Just running the explorable

If you just want to run the explorable you can Click here.

Running a local copy

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:

mkdir into_the_dark
cd into_the_dark
npm init -y
npm install @explorables/into_the_dark
npx http-server node_modules/@explorables/into_the_dark/dist/ 

Embedding the explorable in your site

If you want to embed the explorable in your site, you need to do three things:

  1. load the explorable package via <script> tag in your page header
  2. add a <div> container element
  3. 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/into_the_dark/dist/index.umd.js"></script>
		...
	</head>
		...
	<body>
		...
	    <div id="explorable_container"></div>
		...
	</body>
		...
	<script type="text/javascript">
		const explorable_instance = into_the_dark.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 into_the_dark("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/into_the_dark/dist/index.es.js';
	  	      const into_the_dark = load("explorable_container");
	    </script>
	    <script nomodule src="https://cdn.jsdelivr.net/npm/@explorables/into_the_dark/dist/index.umd.js"></script>	  
		...
	</head>
		...
	<body>
		...
	    <div id="explorable_container"></div>
		...
	</body>
		...
	<script nomodule type="text/javascript">
		const explorable_instance = into_the_dark.load("explorable_container")
	</script>
		...
</html>

Installing the whole package locally

If you want to modify or edit the explorable to make your own version:

Clone repository:

git clone https://github.com/dirkbrockmann/into_the_dark.git

Go to the directory, install, build and show using npm:

  1. cd into_the_dark
  2. npm install
  3. npm run build
  4. npm run preview

License

This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0