Skip to main content

Search

Items tagged with: SmallTech


JSDB 5.1.0 published¹ 🎉

• Forgetting to pass a custom class that’s persisted in your database in your `JSDB.open()` call now throws instead of corrupting your database by falling back to using an untyped object.

• Added JSDF ver. 2 to 3 database migration script (i.e., JSDB version 2-4 to 5)²

To install update:

npm install @small-tech/jsdb@5.1.0

¹ https://codeberg.org/small-tech/jsdb/releases

² https://codeberg.org/small-tech/jsdb#version-2-to-3

#JavaScriptDatabase #JavaScript #database JSDB #JSDB5 #NodeJS #SmallTech #SmallWeb #web #dev


JSDB 5.0.1 published 🎉

• Fixes #14: Crash if DataProxy getHandler() called on object with null prototype. (https://codeberg.org/small-tech/jsdb/issues/14)

To install update:

npm install @small-tech/jsdb@5.0.1

Learn more about JSDB:

https://codeberg.org/small-tech/jsdb#javascript-database-jsdb

#JavaScriptDatabase #JavaScript #database JSDB #JSDB5 #NodeJS #SmallTech #SmallWeb #web #dev


To really drive home the above 👆 point that 100% test coverage does not mean ‘bug free’, just found a bug in JSDB¹ 5.0.0 where running JSON.stringify() on a complex custom object (actually: the automatic Proxy of the custom object created by JSDB) results in an error.

Already have a failing test and about to implement fix.

(It’s at this point where the test harness is invaluable.)

¹ https://codeberg.org/small-tech/jsdb

#JavaScriptDatabase #JavaScript #database #JSDB #JSDB5 #NodeJS #SmallWeb #SmallTech


Realised last night that JavaScript Database (JSDB) doesn’t run the constructor on persisted custom objects (https://codeberg.org/small-tech/jsdb#custom-data-types) when deserialising them because I didn’t know that you apparently have to define your constructor manually when using Object.create().

Will fix it today but it’s something to watch out for if you’re using Object.create() directly.

For more info, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create

#JSDB #customObjects #constructor #bug #JavaScript #NodeJS #SmallTech #SmallWeb


So what do we need, ideally? The equivalent of VC but for tech for the common good.

Pick ten organisations working the common good and give them €5M each. Let them experiment. Let them pivot. Let them cooperate. The only thing you don’t let them do is exit. You can’t sell. Build something for the commons that will live on for the next ten, twenty, fifty years… if not more.

I said as much 5 years ago at the European Parliament:

https://ar.al/2019/11/29/the-future-of-internet-regulation-at-the-european-parliament/

3/3

#funding #EU #SmallTech


And while Kitten is new, it uses those elements and more as well as all the lessons learned building Site.js (https://sitejs.org) – going back five years.

All-in-all I’ve been working towards creating the Small Web—and Kitten, Domain, and Place—for half a decade and, on the greater problem of trying to formulate alternatives to Big Tech for the last decade. All without any funding from the commons/EU.

So, if you can, please support our work:

https://small-tech.org/fund-us

#SmallTech #SmallWeb


Another example is Auto Encrypt – automatically-provisioned TLS certificates for Node.js servers using Let’s Encrypt:

https://codeberg.org/small-tech/auto-encrypt

Similarly, Auto Encrypt Localhost does the same thing – in pure JavaScript, without using mkcert, etc. – for keeping your dev and production environments identical:

https://codeberg.org/small-tech/auto-encrypt-localhost

And the @small-tech/https module replaces Node’s https module to transparently provision certs during dev/production:

https://codeberg.org/small-tech/https

#SmallTech #SmallWeb


When I speak about spending the last few years “building infrastructure”, you might be wondering what sorts of things I’m talking about.

Here are some examples:

JSDB: an in-memory, in-process database that writes to a JavaScript append-only transaction log and which you can use as if you were interacting with regular JavaScript objects.

https://codeberg.org/small-tech/jsdb

(I’ve been developing it for the last four years and it is integrated into Kitten.)

#SmallTech #SmallWeb #JSDB


And this was last year, Kitten has come a long way since then…

Check out the new Streaming HTML workflow:

https://ar.al/2024/03/08/streaming-html/

And how it made it possible to build Draw Together in less than 60 lines of code:

https://ar.al/2024/03/26/draw-together/

Wishing you a lovely conference this year :)

#SmallWeb #Kitten #web #dev #SmallTech #StreamingHTML