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 🙏

© 2026 – Pkg Stats / Ryan Hefner

tetool

v0.0.3

Published

Manage inca-form configurations and sites

Readme

tetool - Node CLI tool for managing table-editor configurations

tetool builds a static website that incorporates INCAForm to provide a way to edit CSV and TSV (collectively, XSV) files with guided autocomplete. The tool scans a source directory for DOSDPpatterns and corresponding XSV files and produces the resulting static website in a form that may be served via GitHub Pages or any other web hosting mechanism.

npm

Requirements

Installation

npm install -g tetool

Usage

tetool --help
tetool --site <targetSiteDir> --title <targetSiteTitle>
tetool --site <targetSiteDir> --source <ontologySourceDir>
tetool --site <targetSiteDir> --source <ontologySourceDir>@<branchName>

Examples

tetool --site ../exposure-inca-form/ --title 'Exposure Ontology'
tetool --site ../exposure-inca-form/ --source ../environmental-exposure-ontology/
tetool --site ../planteome-inca-form/ --source ../plant-trait-ontology/@clean-dp

Building the IncaForm site for exposure-inca-form

This example assumes that a single ontology repo will be used. For this example, the local copy of the environmental-exposure-ontology repo will be used as a source of patterns and XSVs.

  • cd to the site directory, which may not yet contain a docs/ directory: cd exposure-inca-form/
  • Use tetool to create a site directory: tetool --site ./
  • This will create docs/, docs/configurations/, and docs/index.html
  • Use tetool to augment the site directory with configurations based upon ontology source directories tetool --site ./ --source ../environmental-exposure-ontology/

Assumptions about the source directory structure

In order to simplify the use of tetool, we make the assumption that a source ontology repository has a hierarchy resembling that in https://github.com/EnvironmentOntology/environmental-exposure-ontology: source-repo/ src/ ontology/ a.csv b.csv ... patterns/ a.yaml b.yaml ...

In order to support Planteome, this was kludged to support structures like those in https://github.com/Planteome/plant-trait-ontology: source-repo/ patterns/ a.yaml a/ a.csv b.yaml b/ b.csv

Known Issues

The current GO ontology repo does not follow either of the file structures above, and therefore tetool will fail to find the appropriate patterns and XSV files when building the docs/ site. The workaround is to hand-edit the generated files to add any patterns or XSV that were not detected.

Longer term, tetool should be fixed to support a broader and perhaps a more general pattern-finding mechanism, or the user must have the ability to explicitly specify pattern files, rather than having them detected by tetool.

Developing tetool

  • Clone the repo
  • cd to the repo directory
  • npm install # Install dependencies
  • Invent!
  • npm install -g # Install tetool globally, from the local working directory

Version History

0.0.1 - Initial version of tetool installed into NPM 0.0.2 - Adds --local option for ease of development. Adds 'Thing' as a global class available for autocomplete. Add 'src/ontology/patterns' as a possible location to discover pattern files. Add more documentation to README. 0.0.3 - Adds support for 'prebuilt' configurations, which are simply copied into the output directory. Adds support for an explicit output directory instead of the default '/docs'.