home.social

#releasetuesday — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #releasetuesday, aggregated by home.social.

  1. #ReleaseTuesday — Earlier today, I published thi.ng/arcball, a small new package providing an intuitive click & drag 3D camera view controller which is completely agnostic from any UI/drawing/rendering framework. The library simply provides the (quaternion) maths to translate gesture events into rotations and then computes a view matrix (presumably for WebGL/WebGPU).

    The code is ported from the old 2016 Clojure implementation in thi.ng/geom-clj, which itself is based on a 1992 paper (link in readme). Behind the scenes it uses thi.ng/matrices and thi.ng/vectors for various math ops.

    There's also a small new example project to show how to use it (mouse & touch events are enabled, but zooming only works via scroll gestures on touchpad or mousewheel):

    demo.thi.ng/umbrella/webgl-arc

    #ThingUmbrella #TypeScript #JavaScript #UI

  2. #ReleaseTuesday — New version of thi.ng/tsne with ~15-20% better performance[1] due to avoiding repeated internal allocations and skipping gradient updates where unnecessary...

    [1] Benchmarked with multiple datasets of ~750 items, each with 192 dimensions (now ~165ms @ MBA M1, 2020)...

    #ThingUmbrella #TSNE #DataViz #Visualization #ML #Cluster #TypeScript #JavaScript

  3. #ThingUmbrella #ReleaseTuesday... New package (initial alpha release):

    thi.ng/block-fs provides highly customizable & extensible block-based storage with an optional hierarchical filesystem layer. This is useful everywhere you might need virtual filesystem, though the storage providers can also be used without the filesystem layer (e.g. for #Forth-style block data/editors).

    The default configuration provides:

    - arbitrarily nested directories
    - filenames (UTF-8) of max. 31 bytes per directory level
    - max. 32 owner IDs
    - file locking
    - creation/modification timestamps (64 bit)
    - efficient append writes

    Currently included storage providers: TypedArray-based in-memory and host filesystem based file storage (one block per file). More are planned (e.g. IndexedDB, remote endpoint)...

    The readme is currently still lacking various diagrams to illustrate the filesystem internals. I will add those ASAP...

    #ThingUmbrella #FileSystem #VirtualFS #BlockStorage

  4. Several rounds of updates later over the past few days (also in part thanks to some of the feedback received — thank you!), a new version of the thi.ng browser tool is up:

    demo.thi.ng/umbrella/thing-bro

    New features include:

    - additional per-project/example links to API docs, live demos, source code
    - for each tag only the top 10 related tags are shown now to avoid (well, minimize) cognitive overload
    - dozens of tags have been pruned/merged/replaced (across dozens of package.json files, an ongoing process for the near future...)
    - glossary/reference link additions
    - CSS updates

    Since this entire tool is also entirely made with thi.ng/umbrella packages, some of these features (e.g. the related tag ranking/sorting) has been implemented & simplified via new additions to the thi.ng/transducers package (e.g. the new `sortedFrequencies()` reducer function, just released). Please see the main repo readme (section: "Latest updates") for more...

    #ReleaseTuesday #ThingUmbrella #Discoverability #Exploration #FacetedSearch #Tagging #Metadata #Documentation #UI #OpenSource

  5. Updated the multi ridge-line plot example with more interactive/reactive controls to shape the test data (simplex noise) and also to demonstrate how the cursors/labels are using interpolated data (best visible in lower resolutions)... As another small aside, the "resolution" slider is configured to use exponential behavior, i.e. value changes on the LHS are smaller/slower than on the RHS...

    The latest thi.ng/viz update has also just been released, so you can "try it at home/work" too now...

    Demo:
    demo.thi.ng/umbrella/viz-ridge

    Commented source code:
    github.com/thi-ng/umbrella/blo

    cc/ @computersandblues

    #ThingUmbrella #ReleaseTuesday #DataViz #Visualization #AreaPlot #SVG #OpenSource #TypeScript #JavaScript

  6. #ReleaseTuesday: New major version (v3.0.0) of thi.ng/ksuid, a highly configurable KSUID & ULID generator/parser...

    Also did some updates to the main #ThingUmbrella readme & contributing docs, still too long (I guess), but now with TOC, links to project templates, updated info & fixed links...

    github.com/thi-ng/umbrella/blo

  7. #ReleaseTuesday The first release cycle of 2023 has direct updates to 15 of the 177 packages, incl. 2 new packages and new features, additions & bug fixes to others. Also various package readme updates. Please see the main readme in the mono-repo and change logs for each package for further details:

    github.com/thi-ng/umbrella/blo

    Happy coding! :)

    #ThingUmbrella #TypeScript