norden.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
Moin! Dies ist die Mastodon-Instanz für Nordlichter, Schnacker und alles dazwischen. Folge dem Leuchtturm.

Administered by:

Server stats:

3.5K
active users

#releasewednesday

1 post1 participant0 posts today

#ReleaseWednesday — I just released a new version (v8.0.0) of thi.ng/vectors, an almost complete rewrite of the package with all of its ~900 vector operations. I've updated the Readme with a section of _potentially_ minor breaking changes, however I expect this to be a seamless upgrade for the vast majority of users...

I've recently written more about the reasons and implications of this update and I'll refer you to those posts instead of repeating them once more (see links below).

Just the top-level changes:

- Replaced dynamic code generation with higher-order templating to be usable with strict content security policies (when deployed online)
- New structure allows for vast majority of functions to have doc strings (and they do now)
- More consistent/less confusing naming for some operations
- Potentially improved tree-shaking and smaller project bundle sizes

Related to this update I've also refactored and fixed some bugs in other packages (e.g. color, geom, matrices). As a result both the color & matrix packages are now also free from dynamic codegen and therefore won't cause any problems with strict CSPs

Should you run into any issues regarding this update, please get in touch (also grateful for any other experience/impact reports... 🙏)

More info in these recent posts/threads:

- mastodon.thi.ng/@toxi/11429644
- mastodon.thi.ng/@toxi/11431965
- mastodon.thi.ng/@toxi/11433601

Happy coding!

thi.ng/vectorsOptimized 2d/3d/4d and arbitrary length vector operations, support for memory mapping/layouts

#ReleaseWednesday Just pushed a new version of thi.ng/block-fs, now with additional multi-command CLI tooling to convert & bundle a local file system tree into a single block-based binary blob (e.g. for bundling assets, or distributing a virtual filesystem as part of a web app, or for snapshot testing, or as bridge for WASM interop etc.)

Also new, the main API now includes a `.readAsObjectURL()` method to wrap files as URLs to binary blobs with associated MIME types, thereby making it trivial to use the virtual filesystem for sourcing stored images and other assets for direct use in the browser...

(Ps. For more context see other recent announcement: mastodon.thi.ng/@toxi/11426498)

#ReleaseWednesday New (old actually, been dormant since 2021) #ThingUmbrella package addition: thi.ng/tsne - see [1] and [2] for further info/context...

A little bare bones example showing the solver in action to visualize 1000 random 4D data points:

demo.thi.ng/umbrella/tsne-colo

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

cc/ @anandphilipc

[1] mastodon.thi.ng/@toxi/11403086
[2] mastodon.thi.ng/@toxi/11403099

Just released a new version of the polyglot data structure & bindings generator for hybrid #WebAssembly, #Zig & #TypeScript apps/interop. Now also supporting externally defined types for which only stubs for alignment & sizing are required, but which otherwise are opaque and can be used as any other type defs in this toolchain (e.g. embedded in structs/unions or as pointers, slices, arrays etc.)

thi.ng/wasm-api-bindgen

thi.ng/wasm-api-bindgenPolyglot bindings code generators for hybrid JS & WebAssembly projects

#ReleaseWednesday 🚀 This week's thi.ng/umbrella releases include:

thi.ng/meta-css — Added a `doc` command to generate Markdown documentation for generated CSS frameworks (also used to document the included base framework as a section of the readme). Added documentation for the hot-reloading `develop` mode/command and updated/extended the included framework rules (now 1000+ classes & parametric CSS templates)

thi.ng/memoize — Added new, faster & more minimal memoization functions specifically for functions with numeric/string args only (most common in my own usage)

thi.ng/rdom-forms & thi.ng/hiccup-html — Added more form element types

thi.ng/text-format — Added more HTML/CSS formatter options, updated ANSI formatter (faster)

Also updated & refactored several example projects to utilize some of these new features...

thi.ng/umbrellathi.ng/umbrella

#ReleaseWednesday This round of releases includes (among others):

- thi.ng/timestep - new package for fixed timestep simulation updates, discussed in previous tweet
- thi.ng/api - added function to simplify typed array initialization from vector data, e.g. super useful for #WebGL / #WASM interop
- thi.ng/scenegraph - added .mapLocalPointToGlobal() to map local point from anywhere in the scene hierarchy to world space (e.g. useful for camera controllers, view matrix creation)

Other small additions/fixes to thi.ng/color, thi.ng/random, thi.ng/vectors and thi.ng/webgl...

Link to changelogs:

github.com/thi-ng/umbrella/blo

Happy coding! 🤩

#ReleaseWednesday Revamped, refactored and expanded an older project over the past few days and brought it under the #ThingUmbrella: thi.ng/units is a new package for extensible SI unit creation, combination, conversion and calculation with unit based quantities. It comes with ~170 predefined units & constants, but these are just basic building blocks for more. Take a look at the (long) readme (excerpts attached here), with various examples to learn more!

(Especially check the section about calculating with quantities...)