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

Hey folks, quick announcement: we’re not going to keep doing the monthly Small is Beautiful streams going forward.

Instead, I’ll be doing impromptu streams¹ and releasing recordings of new features, etc., as I add them to Kitten, Domain, etc., and Laura might join me for some of those.

We’re both very busy so we’re trying to make the best use of our time.

You can find previous recordings at: https://small-tech.org/videos/

💕

¹ Follow https://owncast.small-web.org

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

Oh, nice, looks like the Fosstodon instance (@fosstodon) silenced my profile.

https://fosstodon.org/@JoshStrobl/110688888195898758

I guess it tells you more about “FOSS”todon than anything else that they chose to block a human rights activist/privacy advocate who wakes up and works at a not-for-profit on free and open software every day. Maybe if I were to work at Google and hack on a hobby open source project in the evenings I’d be acceptable?

smh

Edit: “silenced” not “blocked (i.e., suspended)”

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

Edit: So if you’re on Fosstodon, know that Fosstodon has silenced my account.

You should be able to follow me if you want to see my posts but won’t otherwise see them if they’re boosted into your timelines, etc.

Or maybe consider switching to a FOSS server that doesn‘t silence FOSS developers.

(Please boost if you haven’t been silenced by Fosstodon also so folks there might see. Thanks.)

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

A big thank-you to everyone who just helped me test the Kitten¹ Chat sample app. We had ~35 folks in the room at its peak and I pushed one code update live to everyone during the test ;)

PS. The Kitten docs have a tutorial for building the Kitten Chat example² but I’d recommend starting the tutorials from the first one if you want to have a play with Kitten.

(You can also just view the source code³.)

:kitten:💕

¹ https://codeberg.org/kitten/app
² https://codeberg.org/kitten/app#kitten-chat
³ https://codeberg.org/kitten/app/src/branch/main/examples/kitten-chat

aral,
@aral@mastodon.ar.al avatar

(The Small Web place was being served in development mode from my machine at home, exposed via a wireguard relay I set up.)

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

The #SmallWeb has a new logo…

💕

Yes, that‘s it, the two hearts emoji, that’s the new logo.

“Wait, what?! That’s not a logo, anyone can copy and use that!”

Sure, go right ahead. We’re not playing the same game as Big Tech with their trademarks and whatnot :)

PS. I just updated the placeholder site at https://small-web.org with the new logo and the Small Web protocol will use it as the namespace. e.g., my.small-web.site/💕/id → my identity (ed25519 public key for the cryptography nerds) :)

aral,
@aral@mastodon.ar.al avatar

PPS. I love that the logo renders differently on different platforms. It’s the meaning that matters, not the form.

PPPS. small-web.org will be running a Domain¹ instance once Domain is ready. And Domain itself is a Kitten² app.

PPPPS. Special thanks to @leaverou for, among other things, the nifty little emoji-as-favicon hack. If you want to see how it works, view source on the page.

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

jens, to fediverse
@jens@coma.social avatar

One thing I'm wondering, aside from any ideological viewpoints: Does scale the way new potential giants like / would need it to? I remember some bigger accounts already having put a lot of pressure on / instances (i.e., see https://ar.al/2022/11/09/is-the-fediverse-about-to-get-fryed-or-why-every-toot-is-also-a-potential-denial-of-service-attack/ – thanks for the write up, @aral!)and that would be nowhere near of what to expect…

Protocol wise, it just doesn't look like a good fit to me. Any insights or thoughts here?

aral,
@aral@mastodon.ar.al avatar

@jens Wish I’d been clearer in the post: will definitely scale the way like / need it to.

In fact, at its core, any protocol – no matter how inefficient – that assumes hierarchy where one group is ruled over by another inherently favours centralisation. And Big Tech can always throw money at the problem as well as “optimise” protocols to improve economies of scale.

The alternative is /p2p, where every node is equal.

https://ar.al/2020/08/07/what-is-the-small-web/

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

Since the Streamiverse (streaming updates of my public Mastodon feed) and Kitten Chat (WebSocket chat examples, starting simple and leading to end-to-end-encrypted peer-to-peer Small Web chat) examples are rather long, I just added a simple WebSocket echo tutorial to the list to hopefully better highlight the basics of working with WebSockets in Kitten:

https://codeberg.org/kitten/app#websocket-echos

admin, to random

We don't sign NDA's.

admin,

We don't track (and don't want!) your GPS location, phone contacts, or health data.

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

Just saw that the Fetchiverse, Streamiverse, and Kitten Chat tutorials in the Kitten readme were still showing the old way of doing things so I just updated them.

Respective links:

https://codeberg.org/kitten/app#fetchiverse
https://codeberg.org/kitten/app#streamiverse
https://codeberg.org/kitten/app#kitten-chat

:kitten: 💕

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

Just updated the post I wrote about the Small Web two years ago to include Kitten and Domain:

https://ar.al/2020/08/07/what-is-the-small-web/

(Basically, I want to see a web where every one of us has their own place and where we’re all equals. It’s not a complicated concept. But that doesn’t mean realising it is easy either.)

PS. If you want to support our ongoing work, please fund us. The funding we get from donations/patronage doesn’t pay the rent but it does help.

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

#SmallWeb #SmallTech

fediversereport, to fediverse
@fediversereport@mastodon.social avatar

A group of over 40 European organisations have recently released a statement calling for the EU to set up a European Public Digital Infrastructure Fund.

They call for this fund to support Digital Public Spaces, that are, among other things, based in FOSS, and ensure privacy by design. The statement gives three examples: #Mastodon, #PeerTube and #ActivityPub, stating that they would benefit from such a fund to further flourish.

Entire statement: https://shared-digital.eu/statement/

aral,
@aral@mastodon.ar.al avatar

@fediversereport Gee, who knows, we might even get some funding from that given that’s exactly what we’re building. I won’t hold my breath though given we haven’t received a single euro of European funding today date (and not for lack of trying).

https://small-tech.org

Clundoff, to random
@Clundoff@wandering.shop avatar

Gonna say a thing or two about the relationship between and : can you name another industry where a retailer, as a standard practice, can return stock at any time after delivery and often payment, regardless of condition? I can’t. Now I used to be a bookseller so the pain thereof is not lost on me. (Next)

Clundoff,
@Clundoff@wandering.shop avatar

But let’s say I really want to keep the author happy rather than covering our costs. So we either: sell you books via Ingram, whose rates for bookstores are not great or sell you books directly, which means we get them from Ingram to send to you and eat the cost on shipping. This in turn generally means that we lose money on the whole deal after the store’s discount, Ingram’s cut, etc. And this, of course, doesn’t include any additional costs.

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

Quick heads up if you’re playing with Kitten, I’ve just removed the option to return an object (with title, icon, libraries, etc., properties) from your page routes now that we have the new <page> tag that lets you do that from within html tagged template strings not just from your pages but also from fragments and components.

(So we have one way of doing things that works consistently everywhere now.)

:kitten: 💕

https://codeberg.org/kitten/app#the-page-tag

#Kitten #SmallWeb #SmallTech #web #dev

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

Kitten¹ now has a <page> tag!

Use it to:

• specify certain <head> elements for your page (title, icon, etc.)

• list any libraries you want to include in your page from the ones Kitten has first-class support for (HTMX, HTMX WebSocket, Alpine.js, and Water.css)

Happy weekend, all! :)

:kitten: 💕

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

#Kitten #SmallWeb #SmallTech #web #dev #javaScript #js #NodeJS

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

Folks: So, Aral, you’re building Kitten all by yourself?

Me: Umm, yeah, something like that…

https://codeberg.org/kitten/app/src/branch/main/CONTRIBUTORS.md

#Kitten #SmallWeb #SmallTech #contributors #foss #community

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

Just released a tiny Node module that parses the attributes from a single tag (any attribute from anything that looks like a tag, not just valid attributes from HTML tags).

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

(Regular expressions just don’t cut it when you want to support boolean attributes as well as attributes with dashes in the names and unquoted, single-quoted, and double-quoted values.)

#nodeJS #SmallTech #SmallWeb #attributeParser #web #dev

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

Just added Water.css¹ support to Kitten².

Water is a CSS stylesheet for semantic HTML that’s responsive, has good typographical defaults, and light/dark mode support.

Useful for demos, teaching, and also as a good base stylesheet for your Small Web places.

Just add WATER (see what I did there?) to your libraries array in your pages.

¹ https://watercss.kognise.dev/
² https://codeberg.org/kitten/app/

#Kitten #SmallWeb #SmallTech #WaterCSS #CSS #web #dev #stylesheet #html #semanticHTML

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

Just published Kitten’s¹ new database² commands:

  • kitten db [table name] to see info the database/a specific table
  • kitten db delete [table name] to delete the database/a specific table
  • kitten db tail <table name> to follow a specific table

Full docs: https://codeberg.org/kitten/app#database-commands

¹ https://codeberg.org/kitten/app
² https://codeberg.org/small-tech/jsdb

#Kitten #SmallWeb #SmallTech #JavaScriptDatabase #javascript #database #JSDB #web #dev #js #NodeJS #commandLineInterface #CLI

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

Me: Now, this time, I’m not going to implement anything big before a talk, just take my time, work on my presentation…

Also me: Hmm, let me see, what if I swap one of the core components in Kitten with this other thing… ah, yes, that should be fine…

#Kitten #SmallWeb

aral,
@aral@mastodon.ar.al avatar

So I just finished implementing file upload support in Kitten and it is very neat (if I say so myself) :kitten: 🎉

Will merge it into main tomorrow after some more testing.

Can’t wait to show it off as part of the personal microblog site example I’m going to be livecoding at NewCrafts Paris on Thursday.

(Just look at how little code there is in the POST route and the main page to work with uploads.)

’Night ’night folks :)

#Kitten #SmallWeb #SmallTech #web #dev

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

Yay, just received my Kitten stickers. If you’re in Paris for NewCrafts this week, make sure you ask me for one :)

:kitten:💕

#SmallWeb #SmallTech #Kitten #NewCrafts #stickers #Paris

aral,
@aral@mastodon.ar.al avatar

Haha, the new Kitten stickers are pretty small so they don’t cover the StarLabs logo on my laptop and so is born the Kitten unicorn :)

(Very different to those other unicorns you hear about.)

#Kitten #unicorn #StarLabs #laptop #sticker #SmallWeb #SmallTech

Photo of black laptop lid with Kitten’s head sticker with one of the points from the original logo sticking out the middle of it, making it look like a unicorn.

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

There is no such thing as ethical Big Tech.

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

There are times I think JavaScript (and Node.js) do deserve their reputation…

(Ok, ok, I don’t, but what is this, really?)

“Date.prototype.toISOString called on incompatible receiver [object Date]”

smh

#nodeJS #javaScript #js #web #dev

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

Right, implemented workaround for JavaScript’s Proxy / Date object incompatibility in JavaScript Database (JSDB)¹ and released in version 3.0.2².

Calling methods on persisted Date objects read back into memory now works as it should.

Workaround (diff): https://codeberg.org/small-tech/jsdb/commit/9e039e76f7a149df2fa7ecbbf626f813e44c0ab2
3.0.2 update (diff): https://codeberg.org/small-tech/jsdb/commit/f212566f8da4327d0b91d81e8cc6f5058ce63c47

Kudos to Pravin Divraniya for https://stackoverflow.com/a/57958494

¹ https://codeberg.org/small-tech/jsdb
² https://www.npmjs.com/package/@small-tech/jsdb

#JSDB #JavaScript #JS #database #SmallTech #Date #Proxy #web #dev

chrisg, to random
@chrisg@fosstodon.org avatar

FOSS is not some fundamental component of the fabric of nature that is unalterable.

We made it up. It's fairy dust.

And it was made up to be commercially viable, and supported and promoted as such by the entities that stood to gain from it.

But, you know, it doesn't have to be that. We can make it mean something new, something that opposes capitalism, not play nice with it. It can be the representation of the creativity and talent of myriads of people.

It can be software for punks.

chrisg,
@chrisg@fosstodon.org avatar

@0x5DA The approach by @aral is currently the best description of a desired state of things. To achieve this at scale, I think we need new licenses and new corporate forms, or at least seriously redo what exists. I don't have anything more concrete than that at the moment.

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

I swear anyone who explains to me what is again gets an instant block.

I’ve freely shared nearly everything I’ve created in four decades of programming and I’ve been writing free software exclusively, at great personal expense, for over a decade. (So I haven’t been working at fucking Google or Facebook and hacking on my personal hobby project in the evenings, which seems to be a particularly common trait among )

FOSS is just one feature of .

https://small-tech.org/about/#small-technology

njoseph, (edited ) to fediverse
@njoseph@social.masto.host avatar

When I talked to the Pleroma devs years ago on whether they would like to create a distributed actor system out of Pleroma for large instances, they weren't interested.

The GotoSocial devs aren't interested either in enabling building large instances, in this case by scaling out app servers.

There are also projects like Epicyon and snac2 for AP servers with tiny server footprints.

This is good. Let's keep software in the realm of .

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