0.0.4 • Published 2 years ago

@black-box/bb v0.0.4

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

Black-Box

Preserve your precious JavaScript functions from the future, using Black-Box.

Black-Box is a set of abstractions for Javascript software development concerns including: types, pure functions, reactive systems, databases, files, queues, network services, and deployments.

In Black-Box all of your lovingly-hand-written ESM modules are modeled as a tree of "codepoints." Black-Box indexes the ESM contents by name and type. Black-Box also provides a way to re-cast your handwritten functions into new trees that are tailored for better utility in specific domains. These domains include web services, reactive data stores, command line interfaces, web-based user interfaces, and mobile native apps.

Black-Box tree transformations are similar to compilation. Black-Box takes input files and produces output files. One key difference from traditional compilation is that Black-Box output files always make direct reference to the file containing the hand-written code. The handwritten code is the code that runs, not a copy of the handwritten code. This simplification improves the IDE experience without the need for sourcemaps or other ephemera. That said, Black-Box can also help orchestrate the application of more traditional compilation tools to your codepoints as well. Blacklight includes a full file-dependency tracking system which works well with both forms of compilation described here.

Although extremely type-centric, for the time being Black-Box is doggedly not written in Typescript. Black-Box does however make extensive use of Typescript inside of JSDoc type annotations, in every JS file that makes it up.

Launch ETA: Likely sometime post-2022.

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago