Home

clientModules/addDataTypes.js

This file adds html attributes with information to the article html-element. The info is fetched from a json file.
Version:
  • 1.0.0
Since:
  • 2023-04-01
Author:
  • Kor Dwarshuis
Source:

Example

An article element could look like this:
<article data-level="3" class="level level3 3 type typeK K" data-type="K">…</article>

clientModules/addUiToSidebar.js

This file adds filtering options plus a search field in the main menu below the “Glossary” menu item.
Version:
  • 1.0.0
Since:
  • 2023-11-03
Author:
  • Kor Dwarshuis
Source:

clientModules/createLinkToWikiPage.js

This file creates a link at the bottom in a glossary page to the Wiki article that is the source for the page.
Version:
  • 1.0.0
Since:
  • 2023-11-23
Author:
  • Kor Dwarshuis
Source:

clientModules/crossLinks.js

This file creates links in the content based on keywords. It also creates links to a timestamp in video's. Keywords and urls are in a local json file.
Version:
  • 1.0.0
Since:
  • 2023-02-01
Author:
  • Kor Dwarshuis
Source:

clientModules/dynamicTables.js

clientModules/elementGoFullScreen.js

This file makes the table on the Overview and context page appear in a modal that is almost full screen. It also adds a button to the table that makes it full screen.
Version:
  • 1.0.0
Since:
  • 2023-03-13
Author:
  • Kor Dwarshuis
Source:

clientModules/fetchCommitHash.js

This file fetches the commit hashes of current file and shows it after clicking on a button. The info is fetched from the Github API.
Version:
  • 1.0.0
Since:
  • 2024-04-19
Author:
  • Kor Dwarshuis
Source:

clientModules/fetchFormsColumnFromWotTerms.js

This file adds a “form” to the title of a term in the glossary, based on the value in the “Form” column of the overview.json file. “Form” can be one of the following: [noun], [verb], [relation], or [adjective/adverb].
Version:
  • 1.0.0
Since:
  • 2023-11-01
Author:
  • Kor Dwarshuis
Source:

clientModules/findMentalModelMatches.js

This file adds the same term from external glossaries to the glossary. The terms are added as Bootstrap accordions in the glossary page. The terms are fetched from json files. It only works on pages in /docs/glossary/
Version:
  • 1.0.0
Since:
  • 2023-10-31
Author:
  • Kor Dwarshuis
Source:

clientModules/horizontalScrollHint.js

This file contains a function that adds a visual hint to a web page, indicating that the content can be scrolled horizontally. The hint consists of an image of a hand with a pointing finger and the text "Scroll to the right." This hint is shown when the content inside the targeted HTML element is wider than the visible area, indicating that horizontal scrolling is possible.
Version:
  • 1.0.0
Since:
  • 2022-01-01
Author:
  • Kor Dwarshuis
License:
  • MIT
Source:
See:

clientModules/imageFullSize.js

This file adds functionality to display images in full-size on a web page when clicked. The functionality is implemented via a class added to the image element.
Version:
  • 1.0.0
Since:
  • 2023-09-11
Author:
  • Kor Dwarshuis
Source:

clientModules/insertSubtitles.js

This file handles the display of subtitles for a video player. It takes no direct input, but it relies on the presence of specific HTML elements on the page, such as a container for the subtitles and a video element. The purpose of this code is to extract the start and end times of each subtitle from the text content of HTML paragraph elements (< p >), and then display the corresponding subtitle text in the subtitle container when the video playback time falls within the start and end times of that subtitle.
Version:
  • 1.0.0
Since:
  • 2023-02-12
Author:
  • Kor Dwarshuis
Source:

clientModules/insertVideo.js

This file selects elements with a data-youtubeid attribute and inserts a YouTube iframe into each. The iframe's src is set to the video URL using the youtubeid and starttime data attributes of the element.
Version:
  • 1.0.0
Since:
  • 2023-02-07
Author:
  • Kor Dwarshuis
Source:

Example

< div className="youtube-video" data-youtubeid="RE2QClKir1E" data-starttime="23"></ div> transforms into an iframe.

clientModules/scrollHorizontallyToKeyWordInSearchResults.js

clientModules/showDefinitionsPopUpOnClick.js

clientModules/showGPTsummary.js

clientModules/showLevels.js

This file controls the visibility of content on a webpage based on a "level" parameter. This parameter can be set either through the URL or via localStorage. The script also creates buttons that allow users to manually set the level.
Version:
  • 1.0.0
Since:
  • 2023-02-04
Author:
  • Kor Dwarshuis
Source:

clientModules/typesenseHandleSearchModal.js

clientModules/typesenseInstantSearch.js

clientModules/typesenseInstantSearchInit.js

This file creates the DOM elements for the Typesense search box and search results. The DOM elements for the search hits are in the main Typesense InstantSearch plugin code.
Version:
  • 1.0.0
Since:
  • 2023-05-19
Author:
  • Kor Dwarshuis
Source:

clientModules/upvoteSearchResult.js

This file adds upvote functionality to KERISSE search results. It listens for clicks on elements with the class "upvote" and captures relevant search result data. The script also prompts users for a simple anti spam check. Once the user's answer is verified by a remote PHP script, an upvote is sent to another remote PHP script. A token is stored in a cookie for future upvotes without requiring the user to answer the prompt again. Dependencies: - Octokit, App from 'octokit' - Awesome-Notifications (AWN) for user notifications Configuration variables are specified under the CONFIG section. They include the URLs for the remote PHP scripts for upvoting and answer-checking, as well as messages displayed to the user. https://f3oall.github.io/awesome-notifications/docs/why-such-awesome https://www.npmjs.com/package/awesome-notifications https://github.com/f3oall/awesome-notifications#readme
Version:
  • 1.0.0
Since:
  • 2023-09-18
Author:
  • Kor Dwarshuis
Source:

clientModules/writeChanges.js

This file makes table cells editable and send the edited content to a server and create a GitHub issue for each edit. It uses the Octokit library to interact with the GitHub API and the awesome-notifications library to display notifications to the user. It also uses a MutationObserver to observe changes in the element. When a change is detected, it collects the data of the edited cell (like row, column, row number, column number, column name, proposed text, term) and stores it in the mutation object.
Version:
  • 1.0.0
Since:
  • 2023-03-15
Author:
  • Kor Dwarshuis
Source:

maintenance/XMLsitemapEditor.js

This file can be used to edit an XML sitemap file. It can be used to remove all URLs that do not end with .pdf, or to remove all URLs that contain a specific string. The script will create a backup of the original file before editing it. Environment: NodeJS Usage: $ node XMLsitemapEditor.js
Version:
  • 1.0.0
Since:
  • 2022-01-01
Author:
  • Kor Dwarshuis
Source:

maintenance/findBrokenLinks.js

maintenance/fixDashInWikiCopyFilenames.js

This file replaces the hyphen character in file names with the minus sign character. When copying files from the wiki, the hyphen character causes issues with the file names. Environment: NodeJS
Version:
  • 1.0.0
Since:
  • 2023-12-04
Author:
  • Kor Dwarshuis
Source:

maintenance/fixOmnigraffleSvgOutput.js

This file fixes Omnigraffle svg output. Without these fixes the Docusaurus page does not render. Environment: NodeJS Usage: $ node maintenance/fixOmnigraffleSvgOutput.js
Version:
  • 1.0.0
Since:
  • 2023-07-16
Author:
  • Kor Dwarshuis
Source:

maintenance/fix_INDEX_OVERVIEW_FILE.js

modules-js-node/cleanJson.mjs

This file cleans a JSON file by removing non-printable characters from string values.
Version:
  • 1.0.0
Since:
  • 2023-12-07
Author:
  • Kor Dwarshuis
Source:

modules-js-node/createSpecUpJsonFile.mjs

This file creates JSON files that serve as the source for the Spec-Up document generator. It takes markdown files as input.
Version:
  • 1.0.0
Since:
  • 2024-02-12
Author:
  • Kor Dwarshuis
Source:

modules-js-node/downloadFile.mjs

This file downloads a file from a given URL and save it to a specified path on the local file system.
Version:
  • 1.0.0
Since:
  • 2023-11-12
Author:
  • Kor Dwarshuis
Source:

modules-js-node/glossaryJsonToMarkdown.mjs

This file converts JSON files to markdown files. It is used to convert the glossary JSON files to markdown files. The JSON files are located in the static/json/external-glosseries/glossaries directory. The markdown files are saved in the static/json/external-glosseries/glossaries-to-markdown-from-json directory. Run this script from the root of the project: $ node modules-js-node/glossaryJsonToMarkdown.mjs
Version:
  • 1.0.0
Since:
  • 2024-02-09
Author:
  • Kor Dwarshuis
Source:

modules-js-node/unzipFile.mjs

modules-js-universal/positionInArray.mjs

modules-js-universal/toLowerCaseAndRemoveSpecialChars.js