Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@decidables/detectable-math

decidables57CC-BY-SA-4.0 AND GPL-3.0-or-later0.2.0

detectable-math: Equations for calculating Signal Detection Theory

explorable explanation, explorable, decision making, decidables, signal detection theory, sensitivity, response bias, hit, miss, false alarm, correct rejection, hit rate, false alarm rate, accuracy, detectable

readme

decidables
Explorable Explanations of Decision Making

deployment license

decidables is a collection of websites and supporting libraries for explorable explanations of quantitative approaches to human decision making.

decidables is implemented as a git monorepo on GitHub.

Sites

The sites are served from GitHub Pages at decidables.github.io.

  • decidables (source)
    Explorable Explanations of Decision Making
    The root site with overall info and links to the individual explorables
  • Draft available:
    d′etectable (source)
    An Explorable Explanation of Signal Detection Theory
  • In progress...
    prospectαbλe (source)
    An Explorable Explanation of Cumulative Prospect Theory
  • In progress...
    diskountable (source)
    An Explorable Explanation of Hyperbolic Temporal Discounting
  • In progress...
    accumulable (source)
    An Explorable Explanation of the Diffusion Decision Model

Libraries

The libraries are published to npm in the @decidables scope.

Development

Dependencies updated February 6, 2025.

Compatibility Goals

In general, it should work with versions of any browsers using up-to-date WebKit/JavaScriptCore, Blink/V8, or Gecko/SpiderMonkey on desktop or mobile.

  • Desktop (last 2 versions)
    • Chrome
    • Edge
    • Firefox
    • Safari
    • Opera
  • Mobile
    • Chrome on Android
    • Safari on iOS

Style Guide

  • Within a page:
    • Headings start at H2, only first letter is capitalized
    • Italics used for emphasis
    • Using remark-citeproc:
      • :cite[] citations
      • ::ref insert reference list
    • Using remark-glossary:
      • :term[] terminology
      • :entry[] glossary entry
      • :::glossary ::: glossary
    • Using remark-div:
      • :::ui ::: user interface notes
    • Using remark-span:
      • :page[] link to another page
      • :key[] keywords
      • :tool[] development tool
      • :button UI button
      • :prompt UI prompt
      • :slider UI slider
      • :switch UI switch
      • :toggle UI toggle

Global Tools

Note: If not on Windows, replace choco with OS package manager of choice

Install

  • Manually install chocolatey https://chocolatey.org/install (on Windows) or HomeBrew https://brew.sh/ (on MacOS)
  • choco install openjdk or brew install openjdk
  • choco install git or brew install git
  • choco install nodejs or brew install node then brew install corepack
  • corepack enable
    • This is currently needed to use yarn without a separate installation

Upgrade

  • choco outdated or brew outdated
  • choco upgrade all or brew update then brew upgrade
  • yarn set version latest

Package Scripts

Install

  • yarn install
    • Downloads and installs yarn dependencies & devDependencies to node_modules/

Lint

  • yarn lint
    • Lints all libraries for markdown and scripts in src/
    • Lints all sites for markdown, scripts, and styles in src/, and compiled markup in local/
  • yarn workspace @decidables/<library|site> lint
    • Lints a single library or site
  • yarn workspace @decidables/<library|site> gulp lint<type>
    • Lints Scripts or Styles in a single library
    • Lints Markdown, Markup, Scripts, or Styles in a single site

Test

  • yarn test
    • Runs all tests for all libraries and reports coverage in test/coverage/
  • yarn workspace @decidables/<library> test
    • Runs all tests for a single library and reports coverage in test/coverage/
  • yarn workspace @decidables/<library> test --watch
  • yarn workspace @decidables/<library> test -w
    • Runs all tests for a single library in watch mode and reports coverage in test/coverage/
  • yarn workspace @decidables/<library> test <directory/filename>
    • Runs tests for a single library for a single file and reports coverage in test/coverage/
  • yarn workspace @decidables/<library> test <directory/filename> --watch
  • yarn workspace @decidables/<library> test <directory/filename> -w
    • Runs tests for a single library for a single file in watch mode and reports coverage in test/coverage/

Compile

  • yarn compile
    • Compiles all sites to browser-compatible scripts from src/ to local/
  • yarn workspace @decidables/<site> compile
    • Compiles a single site from src/ to local/
  • yarn workspace @decidables/<site> gulp compile<type>
    • Compiles Favicons, Fonts, Markdown, Scripts, or Styles in a single site from src/ to local/

Watch

  • yarn watch
    • Re-compile all sites on file changes in src/ or local library dependencies
  • yarn workspace @decidables/<site> watch
    • Re-compile site on file changes in src/ or local library dependencies
  • yarn workspace @decidables/<site> gulp watch<type>
    • Re-compile site on Markdown, Scripts, or Styles changes in src/ or local library dependencies

Build

  • yarn build
    • Builds all libraries to browser-compatible optimized bundles from src/ to lib/
    • Builds all sites to browser-compatible optimized scripts from local/ to dist/
  • yarn workspace @decidables/<library|site> build
    • Builds a single library to browser-compatible optimized bundles from src/ to lib/
    • Builds a single site to browser-compatible optimized scripts from local/ to dist/
  • yarn workspace @decidables/<library|site> gulp build<type>
    • Builds Scripts in a single library from src/ to lib/
    • Builds Favicons, Fonts, Markup, Scripts, or Styles in a single site from local/ to dist/

Version

  • yarn changed
    • Lists which libraries and sites will receive version bumps when yarn versions is run
  • yarn versions
    • Note: requires a valid GitHub personal access token be set to GH_TOKEN environment variable
    • Bumps version numbers of all libraries and sites as needed based on conventional commits
    • Transitive dependencies updated in each package.json
    • Git tags added for new versions
    • All of this is committed and pushed

Publish

  • yarn publish ######
    • Note: you must be logged in to NPM with appropriate scope: npm adduser <username> --scope=@decidables
    • Note: to be run immediately after yarn version
    • Note: ###### should be replaced with an actual one time passcode
    • Publishes all new versions of public libraries to npm

Deploy

  • yarn deploy
    • Note: requires a valid GitHub personal access token be set to the repository secret API_TOKEN_GITHUB on @decidables/decidables
    • Re-compile and build markdown (to grab new version) then copy files for all sites from dist/ to decidables.github.io/ for GitHub Pages deployment
  • yarn workspace @decidables/<site> deploy
    • Re-compile and build markdown (to grab new version) then copy files for a single site from dist/ to decidables.github.io/ for GitHub Pages deployment

Serve

Upgrade

  • yarn outdated
    • Check for outdated dependencies
  • yarn up
    • Upgrade to latest dependencies, ignoring semver!
  • yarn upgrade-interactive
    • Manual upgrade to newer dependencies, with option to ignore semver
  • yarn dlx update-browserslist-db@latest
    • Update caniuse-lite so the browser data is up-to-date

File Organization

  • decidables/
    • .git/ (Repository for git) [autogenerated]
    • .github/ (Configuration for GitHub Actions)
    • .vscode/ (Editor configuration for VSCode)
    • .yarn/ (Repository for yarn) [autogenerated]
    • decidables.github.io/ (Sites organized for deployment) [autogenerated]
    • libraries/ (All libraries are found here)
    • node_modules/ (dependencies & devDependencies installed by yarn install) [autogenerated]
    • scripts/ (gulp support scripts used for tooling)
    • sites/ (All sites are found here)
    • .commitlint.json (Commit linting configuration for commitlint)
    • .eslintrc.json (Code linting configuration for eslint)
    • .gitattributes (Version control configuration for git)
    • .gitignore (Version control configuration for git)
    • .remarkrc.json (Markdown linting configuration for remark-lint)
    • .stylelintrc.json (Style linting configuration for stylelint)
    • .webtestrunner.js (Testing configuration for web-test-runner)
    • .yarnrc.yml (Package manager configuration for yarn)
    • gulpfile.js (Tasks for gulp)
    • lerna.json (Monorepo configuration for lerna)
    • LICENSE.md (Describes licenses for this project)
    • package.json (Overall configuration for monorepo)
    • README.md (This file)
    • yarn.lock (Proprietary file for tracking package installations by yarn) [autogenerated]

License

The content of this project is licensed under Creative Commons Attribution-ShareAlike 4.0 International License (CC-BY-SA-4.0) and the source code of this project is licensed under GNU General Public License v3.0 or any later version (GPL-3.0-or-later).

changelog

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

0.2.0 (2025-05-20)

Features

  • detectable-math: add parameter settings (79c7da5)

0.1.13 (2025-02-06)

Note: Version bump only for package @decidables/detectable-math

0.1.12 (2025-01-26)

Note: Version bump only for package @decidables/detectable-math

0.1.11 (2024-05-04)

Note: Version bump only for package @decidables/detectable-math

0.1.10 (2024-01-27)

Note: Version bump only for package @decidables/detectable-math

0.1.9 (2024-01-09)

Note: Version bump only for package @decidables/detectable-math

0.1.8 (2023-12-31)

Note: Version bump only for package @decidables/detectable-math

0.1.7 (2023-12-28)

Note: Version bump only for package @decidables/detectable-math

0.1.6 (2023-11-30)

Note: Version bump only for package @decidables/detectable-math

0.1.5 (2023-09-13)

Note: Version bump only for package @decidables/detectable-math

0.1.4 (2023-03-22)

Note: Version bump only for package @decidables/detectable-math

0.1.3 (2023-01-16)

Note: Version bump only for package @decidables/detectable-math

0.1.2 (2022-04-27)

Bug Fixes

  • detectable-math: remove 'lit' as extraneous dependency (0c108c0)

0.1.1 (2022-03-21)

Note: Version bump only for package @decidables/detectable-math

0.1.0 (2022-03-18)

Features

  • all: version bumps for dependencies (3c4678c)

0.0.4 (2022-03-18)

Note: Version bump only for package @decidables/detectable-math

0.0.3 (2022-03-15)

Note: Version bump only for package @decidables/detectable-math

0.0.2 (2022-03-07)

Note: Version bump only for package @decidables/detectable-math

0.0.1 (2022-03-03)

Note: Version bump only for package @decidables/detectable-math