aral, to SmallWeb
@aral@mastodon.ar.al avatar

So as Kitten¹ matures, I’m starting to talk about it at in-world events.

At the end of May, I’ll be in Paris, presenting Kitten (& Domain²) at @newcrafts

https://ncrafts.io/agenda

I arrive the 24th, speak the 25th, and leave the 27th.

If you’re around and want to chat about Small Web, Kitten & Domain, let me know and maybe we can arrange a small get-together if there’s enough interest.

:kitten:💕

¹ https://codeberg.org/kitten/app
² https://codeberg.org/domain/app

aral, to SmallWeb
@aral@mastodon.ar.al avatar

In case you’re wondering how little old Kitten performs in the tests of the Big Boys…

(And that’s from a development build of a Domain page, not a deployment build so no compression, live reload script in page, etc.)

Turns out it’s pretty easy to ace such tests when you’re not spending cycles and code doing horrible things to people in your web pages (like tracking their every move and attempting to exploit their behaviour for profit). 🤔

:kitten:💕

aral, to programming
@aral@mastodon.ar.al avatar

Want strong typing without a build process?

(Hint: you don’t need to use TypeScript.)

  1. Use a modern editor like Helix Editor or VSCodium that supports the TypeScript Language Server (LSP).

  2. Add this line to the top of your JavaScript file (without the backticks, if you see any):

// @ts-check  
  1. Go read up on JSDoc ;)

¹ https://helix-editor.com
² https://jsdoc.app/about-getting-started.html

aral,
@aral@mastodon.ar.al avatar

(All examples taken from Domain – https://codeberg.org/domain/app – the work-in-progress free and open platform for Small Web hosts.)

aral, to programming
@aral@mastodon.ar.al avatar

Just released ()¹ version 3.0.0

Breaking change²: data is now evaluated in virtual machine contexts.

If you were persisting custom objects³ and referencing classes from global scope (globalThis) to have your objects keep their types when read, you must now explicitly register your list of custom classes using the new classes property of the options object when calling JSDB.open().

¹ https://codeberg.org/small-tech/jsdb#javascript-database-jsdb
² https://codeberg.org/small-tech/jsdb/src/branch/main/CHANGELOG.md#3-0-0-2023-04-28
³ https://codeberg.org/small-tech/jsdb#custom-data-types

aral, (edited )
@aral@mastodon.ar.al avatar

This is quite a major change internally but since has 100% code coverage, I’m pretty certain I didn’t break anything else.

Then again, JSDB had 100% code coverage before this too and the issue this update fixes was around for several years. (Likely because no one, including me, was really persisting custom objects… something I’m now starting to use while building .)

Just goes to stress that 100% code coverage in no way means “bug free.” ;)

¹ https://codeberg.org/domain/app

aral,
@aral@mastodon.ar.al avatar

PS. I’ll update Kitten¹ with the latest JSDB today.

¹ https://codeberg.org/kitten/app

aral,
@aral@mastodon.ar.al avatar

Right, I just updated Kitten so it includes JSDB version 3.0.0 and it now has built-in support for database app modules.

A database app module is an app module¹ for your database where you can provide a schema for it using JavaScript class hierarchies and register those classes with the database so your custom objects maintain their types when they are written and read in.

You can see it in use in Domain here: https://codeberg.org/domain/app/src/branch/main/app_modules/database/database.js#L198

¹ https://codeberg.org/kitten/app#app-modules

cosmality, to random

You may have seen the #SPAM account from thegx.ca making multiple accounts for nothing more than the purpose of SPAMMING people by #mass #following to #flood your #follower list with their #malicious #website.

According to their #WHOIS #domain #registration, they have obviously provided #fake #information. Because of this, I have filed an #official #complaint with ICANN.

Secondly, I found out their site is hosted by #PromoPeople, and have filed complaint with them as well. You should too!

aral, to SmallWeb
@aral@mastodon.ar.al avatar

Live in half an hour:

Join me for a look at what’s been happening with Kitten¹ and Domain² in the past month.

https://owncast.small-web.org

New stuff includes:

• slots in components
• layout components
• app modules
@small/kitten library
• type-safe databases in JSDB with JSDoc and custom classes

¹ Kitten: https://codeberg.org/kitten/app

² Domain: https://codeberg.org/domain/app

aral, to SmallWeb
@aral@mastodon.ar.al avatar

Join me at 5PM Irish time (UTC+1) today for a look at what’s been happening with Kitten¹ and Domain² in the past month. I’ll be reviewing some of the cow paths I’ve been paving and the patterns that are emerging in Kitten as I build Domain using it.

New stuff includes:

• slots in components
• layout components
• app modules
@small/kitten library
• type-safe databases in JSDB with JSDoc and custom classes

https://owncast.small-web.org

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • rosin
  • mdbf
  • osvaldo12
  • ethstaker
  • tacticalgear
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • modclub
  • Youngstown
  • everett
  • slotface
  • kavyap
  • megavids
  • GTA5RPClips
  • khanakhh
  • cisconetworking
  • tester
  • ngwrru68w68
  • normalnudes
  • Durango
  • InstantRegret
  • cubers
  • provamag3
  • anitta
  • Leos
  • lostlight
  • All magazines