#sitejs — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #sitejs, aggregated by home.social.
-
👋🤓 Goodbye Site.js, Hello Kitten!
I started working on creating a Small Web¹ server (a peer-to-peer Web server) six years ago² with Site.js.
Building Site.js was my first attempt. And it resulted in:
• Auto Encrypt (automatic Let’s Encrypt certificates): https://codeberg.org/small-tech/auto-encrypt
• Auto Encrypt Localhost (automatic localhost TLS certificates): https://codeberg.org/small-tech/auto-encrypt-localhost
• @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): https://codeberg.org/small-tech/https
• JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: https://codeberg.org/small-tech/jsdb
As Site.js reached an evolutionary dead-end, and as I learned from my experiements with replicated data types that replicated data types are *not* a prerequisite for a decentralised web (actual topological decentralisation and ease of use are), I started writing a new server/platform called Kitten from scratch while still making use of the tried and tested modules listed above.
Last week, I switched over our last site using Site.js to Kitten and, with that, today I’ve sunset³ Site.js:
For its successor, please see Kitten:
If you want to support our work at the Small Technology Foundation, please consider becoming a patron:
https://small-tech.org/fund-us
:kitten:💕
¹ https://ar.al/2024/06/24/small-web-computer-science-colloquium-at-university-of-groningen/
² https://ar.al/2019/08/26/introducing-small-technology-foundation/
³ Using our instance of Look Over There!: https://look-over-there.small-web.org#SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS
-
👋🤓 Goodbye Site.js, Hello Kitten!
I started working on creating a Small Web¹ server (a peer-to-peer Web server) six years ago² with Site.js.
Building Site.js was my first attempt. And it resulted in:
• Auto Encrypt (automatic Let’s Encrypt certificates): https://codeberg.org/small-tech/auto-encrypt
• Auto Encrypt Localhost (automatic localhost TLS certificates): https://codeberg.org/small-tech/auto-encrypt-localhost
• @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): https://codeberg.org/small-tech/https
• JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: https://codeberg.org/small-tech/jsdb
As Site.js reached an evolutionary dead-end, and as I learned from my experiements with replicated data types that replicated data types are *not* a prerequisite for a decentralised web (actual topological decentralisation and ease of use are), I started writing a new server/platform called Kitten from scratch while still making use of the tried and tested modules listed above.
Last week, I switched over our last site using Site.js to Kitten and, with that, today I’ve sunset³ Site.js:
For its successor, please see Kitten:
If you want to support our work at the Small Technology Foundation, please consider becoming a patron:
https://small-tech.org/fund-us
:kitten:💕
¹ https://ar.al/2024/06/24/small-web-computer-science-colloquium-at-university-of-groningen/
² https://ar.al/2019/08/26/introducing-small-technology-foundation/
³ Using our instance of Look Over There!: https://look-over-there.small-web.org#SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS
-
👋🤓 Goodbye Site.js, Hello Kitten!
I started working on creating a Small Web¹ server (a peer-to-peer Web server) six years ago² with Site.js.
Building Site.js was my first attempt. And it resulted in:
• Auto Encrypt (automatic Let’s Encrypt certificates): https://codeberg.org/small-tech/auto-encrypt
• Auto Encrypt Localhost (automatic localhost TLS certificates): https://codeberg.org/small-tech/auto-encrypt-localhost
• @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): https://codeberg.org/small-tech/https
• JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: https://codeberg.org/small-tech/jsdb
As Site.js reached an evolutionary dead-end, and as I learned from my experiements with replicated data types that replicated data types are *not* a prerequisite for a decentralised web (actual topological decentralisation and ease of use are), I started writing a new server/platform called Kitten from scratch while still making use of the tried and tested modules listed above.
Last week, I switched over our last site using Site.js to Kitten and, with that, today I’ve sunset³ Site.js:
For its successor, please see Kitten:
If you want to support our work at the Small Technology Foundation, please consider becoming a patron:
https://small-tech.org/fund-us
:kitten:💕
¹ https://ar.al/2024/06/24/small-web-computer-science-colloquium-at-university-of-groningen/
² https://ar.al/2019/08/26/introducing-small-technology-foundation/
³ Using our instance of Look Over There!: https://look-over-there.small-web.org#SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS
-
👋🤓 Goodbye Site.js, Hello Kitten!
I started working on creating a Small Web¹ server (a peer-to-peer Web server) six years ago² with Site.js.
Building Site.js was my first attempt. And it resulted in:
• Auto Encrypt (automatic Let’s Encrypt certificates): https://codeberg.org/small-tech/auto-encrypt
• Auto Encrypt Localhost (automatic localhost TLS certificates): https://codeberg.org/small-tech/auto-encrypt-localhost
• @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): https://codeberg.org/small-tech/https
• JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: https://codeberg.org/small-tech/jsdb
As Site.js reached an evolutionary dead-end, and as I learned from my experiements with replicated data types that replicated data types are *not* a prerequisite for a decentralised web (actual topological decentralisation and ease of use are), I started writing a new server/platform called Kitten from scratch while still making use of the tried and tested modules listed above.
Last week, I switched over our last site using Site.js to Kitten and, with that, today I’ve sunset³ Site.js:
For its successor, please see Kitten:
If you want to support our work at the Small Technology Foundation, please consider becoming a patron:
https://small-tech.org/fund-us
:kitten:💕
¹ https://ar.al/2024/06/24/small-web-computer-science-colloquium-at-university-of-groningen/
² https://ar.al/2019/08/26/introducing-small-technology-foundation/
³ Using our instance of Look Over There!: https://look-over-there.small-web.org#SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS
-
👋🤓 Goodbye Site.js, Hello Kitten!
I started working on creating a Small Web¹ server (a peer-to-peer Web server) six years ago² with Site.js.
Building Site.js was my first attempt. And it resulted in:
• Auto Encrypt (automatic Let’s Encrypt certificates): https://codeberg.org/small-tech/auto-encrypt
• Auto Encrypt Localhost (automatic localhost TLS certificates): https://codeberg.org/small-tech/auto-encrypt-localhost
• @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): https://codeberg.org/small-tech/https
• JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: https://codeberg.org/small-tech/jsdb
As Site.js reached an evolutionary dead-end, and as I learned from my experiements with replicated data types that replicated data types are *not* a prerequisite for a decentralised web (actual topological decentralisation and ease of use are), I started writing a new server/platform called Kitten from scratch while still making use of the tried and tested modules listed above.
Last week, I switched over our last site using Site.js to Kitten and, with that, today I’ve sunset³ Site.js:
For its successor, please see Kitten:
If you want to support our work at the Small Technology Foundation, please consider becoming a patron:
https://small-tech.org/fund-us
:kitten:💕
¹ https://ar.al/2024/06/24/small-web-computer-science-colloquium-at-university-of-groningen/
² https://ar.al/2019/08/26/introducing-small-technology-foundation/
³ Using our instance of Look Over There!: https://look-over-there.small-web.org#SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS
-
Your web server having an interactive shell (REPL) where you can live update entries in your site/app’s database is pretty neat (if I do say so myself) :)
https://kitten.small-web.org/reference/#kitten-s-interactive-shell-repl
(I’m porting the Small Technology Foundation site¹ from Site.js² – and hence from being a static site generated via Site.js’s integrated Hugo³ – to Kitten⁴. In the process, I’m creating an admin panel⁵ for the news, events, and videos sections, which will make them easier to update, and storing the data in Kitten’s internal JavaScript Database⁶.)
¹ https://small-tech.org
² https://sitejs.org
³ https://gohugo.io/
⁴ https://kitten.small-web.org
⁵ It’s trivial to create authenticated routes in Kitten. You just add a lock emoji (🔒) to the end of your route’s name. e.g., admin🔒.page.js or /admin🔒/index.page.js (see https://kitten.small-web.org/reference/#sessions-and-authentication).
⁶ https://codeberg.org/small-tech/jsdb#Kitten #REPL #shell #JavaScript #database #JavaScriptDatabase #JSDB #SmallTechnologyFoundation #SiteJS #Hugo #web #dev #NodeJS
-
I’m in the process of rewriting our sites that use Site.js¹, which has been deprecated for some time now, in Kitten².
In any of your sites use Site.js, I’d highly recommend doing the same thing. This is also a heads up for anyone who uses Site.js to install and run their own Owncast server³.
Site.js will be retired and the web site will start forwarding to Kitten’s at the end of April, 2025.
In May, automatic TLS certificate renewals for existing sites will start to fail.
(Kitten is the spritual successor to Site.js. Or think of Site.js as my first attempt at a Small Web server. I learned a lot while making it and a lot of the components I built for Site.js – like Auto Encrypt⁴, etc. – live on in Kitten.)
:kitten:💕
¹ https://sitejs.org
² kitten.small-web.org
³ CC @gabek, @owncast: If Site.js is still listed as a way of installing Owncast, now would be a good time to remove that and to relay this to folks in the Owncast community :)
⁴ https://codeberg.org/small-tech/auto-encrypt#SiteJS #Kitten #Owncast #SmallWeb #SmallTech #announcement #notice
-
So I guess Let’s Encrypt has decided what I’ll be working on today then…
https://letsencrypt.org/2024/12/05/ending-ocsp/
(They’re ending OCSP stapling support. I’ll be updating Auto Encrypt¹ to remove OCSP support and then update @small-tech/https, which uses it, along with Auto Encrypt Localhost² to provide seamless TLS support regardless of whether you’re working in development or in production, and then update Site.js³ – deprecated but still used to serve some of our own sites at Small Technology Foundation⁴ – and Kitten⁵, with the latest @small-tech/https.)
¹ https://codeberg.org/small-tech/auto-encrypt
² https://codeberg.org/small-tech/auto-encrypt-localhost
³ https://codeberg.org/small-tech/https
⁴ https://small-tech.org
⁵ https://kitten.small-web.org#SmallWeb #SmallTech #TLS #SSL #HTTPS #LetsEncrypt #OCSP #AutoEncrypt #AutoEncryptLocalhost #SiteJS #Kitten
-
Just made a macOS bug-fix release for Site.js¹ and also deprecated it as I’ll no longer be maintaining it. (We’ll be porting our own sites to Kitten².)
Site.js was the first iteration of a Small Web server and I learned a whole lot by building it. It is also where many of the components in Kitten originated (auto TLS, the JSDB database, etc.)
I’ll keep the site up for the foreseeable future for the historic record.
-
Found Site.js a small personal web tool for #Linux, #macOS, and #Windows10. #siteJS
https://codeberg.org/site.js/app
Why is this diferent from running a static #Emacs powered website on a local server? I've been doing this for more than 20 years.
-
Note: if you already have Owncast installed via Site.js, please follow the upgrade instructions for 0.0.11 instead of installing it again using Site.js so as to keep your database, etc.
https://owncast.online/releases/owncast-0.0.12/#upgrade-instructions-from-0011
-
Site.js 17.8.0 released.
- Updates the version of Owncast installed with site enable --owncast to the latest (0.0.12)
-
Really love how our Owncast site is looking (if I do say so myself) :)
Also, remember that you can set up Owncast on a VPS with the following Site.js command:
site enable --owncast
That’s it.
It’ll be up and running with automatic TSL certificates and everything. You just need to sign into the admin, change your password/stream key and maybe take a few moments to customise your site info :)
-
Really love how our Owncast site is looking (if I do say so myself) :)
Also, remember that you can set up Owncast on a VPS with the following Site.js command:
site enable --owncast
That’s it.
It’ll be up and running with automatic TSL certificates and everything. You just need to sign into the admin, change your password/stream key and maybe take a few moments to customise your site info :)
-
Really love how our Owncast site is looking (if I do say so myself) :)
Also, remember that you can set up Owncast on a VPS with the following Site.js command:
site enable --owncast
That’s it.
It’ll be up and running with automatic TSL certificates and everything. You just need to sign into the admin, change your password/stream key and maybe take a few moments to customise your site info :)
-
Really love how our Owncast site is looking (if I do say so myself) :)
Also, remember that you can set up Owncast on a VPS with the following Site.js command:
site enable --owncast
That’s it.
It’ll be up and running with automatic TSL certificates and everything. You just need to sign into the admin, change your password/stream key and maybe take a few moments to customise your site info :)
-
Site.js version 17.7.1 released
This is a patch release that fixes a bug with Site.js’s HTTP Proxy server which meant that Owncast’s federation features were not working when installed through Site.js
-
Site.js version 17.7.0 released
Updates the version of Owncast installed to 0.0.11 (this is the version that has fediverse features).
To setup and run your own Owncast server:
1. Install Site.js on a VPS (this is one terminal command)
2. Run: `site enable --owncast`
3. There is no three. You now have a server with auto-configured TLS running Owncast. Stream away! :)
-
Site.js version 17.6.0 released
This updates the automatic Let’s Encrypt (LE) functionality to ensure that certificates can continue to be provisioned and renewed past the breaking change LE will implement on September 15, 2022.
(Site.js is a small web server that we use to run all our own sites at Small Technology Foundation and personally.)
-
I’ve just updated Site.js to 17.5.0.
Update: Installs latest @owncast (version 0.0.10)
-
I wrote a note:
Thinking about Hugo again but maybe with Site.js
#Hugo #SiteJS #AFoolishConsistency #Blog
https://randomgeekery.org/note/2022/01/thinking-about-hugo-again/
-
"Have" to make two websites this year that are mostly one pagers. Going to use #sitejs for it. Setting up a localhost was the fastest i have ever done it. No assumptions as well.
-
Site.js version 17.4.0 released
- Improved statistics view- Security: If you use cryptographically-secure random path fragments, these are now masked in statistics so they are not leaked if you choose to make your statistics public
- Security: improved documentation on securing your admin routes if you use this method (https://github.com/small-tech/site.js/blob/master/README.md#creating-an-admin-page)
-
PS. Site.js makes it very simple to hack together a secure admin page for your small web app using a cryptographically secure secret route without requiring you to build a role management system with passwords, etc. Perfect if you’re the only one to access it.
https://github.com/small-tech/site.js/blob/master/README.md#creating-an-admin-page
-
Site.js version 17.3.3 released
This is a critical security fix for a major vulnerability where knowing the exact URL to a file in a dotfile directory within the site (e.g., the default .db JSDB database directory) would result in file download.
If you’re running Site.js in production, your servers will auto-update within the next six hours. Or you can manually update them now by running:
site update
Read more: https://github.com/small-tech/site.js/blob/master/CHANGELOG.md#fixed
-
Site.js version 17.3.2 released
Fixed: Upgrades JSDB to version 1.2.1, fixing corruption issues with edge-case object keys
(Site.js is a Small Web construction set. Learn more at https://sitejs.org)
-
Hmm, if you have an elementary OS app and you type task/website, shouldn’t you get a simple one-page web site for your app generated from your app’s metadata with localised text, screenshots, etc., that you can run/host with Site.js?
Hmm… 🤔
-
Site.js version 17.3.1 released
Updates Owncast to latest 0.0.8 release for the one-line Owncast production machine setup command:
site enable --owncast
-
Just released Site.js version 17.2.0
Adds: --enable-embeds flag to enable pages on your site to be embedded on other sites.
Fixes: When Owncast is installed via Site.js, streams cannot be embedded on other sites (see https://github.com/owncast/owncast/issues/1109)
-
Site.js version 17.1.0 released
• site enable --owncast for setting up your own Twitch (Owncast) now installs Owncast version 0.0.7 (the latest).
https://owncast.online/quickstart/sitejs/
CC @owncast
-
-
Me: I wonder if I should implement a lightweight WebSocket RPC library for Basil instead of using WebSockets directly…
Also me: *stumbles on a lightweight WebSocket RPC example I made in December*
https://github.com/small-tech/site.js-websocket-rpc-example
:awesome:👍
-
Hallo @featureswelcome,
ich habe euch eben via @literatools entdeckt, klingt spanned, was ihr macht!
Darf ich mal random eine Frage auf euch werfen?! -> Wollt ihr mal was zu #siteJs machen?! Würde ich mir dann gern anhören!
Nach meine Verständnis geht es um: Selbst hosten; einfach, schön und gut; für ganz normale Menschen / für Alle.
-
New blog post: JSDB migrations
JSDB is a 100% JavaScript database so you’d write your migrations in… you guessed it, JavaScript. Here’s how I did it for my first.
-
Just released Site.js version 17.0.2
Updates to middleware (in the new .middleware folder) now result in an automatic server restart (just like routes do).
-
Site.js version 17.0.1 released
Fixes regression in 17.0.0 where the web socket server was being created twice when advanced routing and DotJS were used together.
To update: site update
(Production servers will auto update in the next six hours as usual.)
-
So it’s very much still an early work-in-progress but I’ve renamed WhatDB to JavaScript Database (JSDB) as it now streams and writes to an append-only transaction log in pure JavaScript:
https://github.com/small-tech/jsdb
(This is what I mentioned I wanted to try last week in my post “What if data was code?” https://ar.al/2020/09/23/what-if-data-was-code/)
-
So it’s very much still an early work-in-progress but I’ve renamed WhatDB to JavaScript Database (JSDB) as it now streams and writes to an append-only transaction log in pure JavaScript:
https://github.com/small-tech/jsdb
(This is what I mentioned I wanted to try last week in my post “What if data was code?” https://ar.al/2020/09/23/what-if-data-was-code/)
-
And if you want the same functionality but for localhost, check out auto-encrypt-localhost:
https://github.com/small-tech/auto-encrypt-localhost
And if you want both those things and more in a higher-level tool that doesn’t even require you to install Node.js, check out Site.js:
#SmallTech #LetsEncrypt #NodeJS #AutoEncryptLocalhost #SmallWeb #SiteJS
-
After over a year of work – and as we’re getting closer to the next release of Site.js – I think I’m now comfortable enough to start giving the project and the organisation a bit more visibility so I’ve just mirrored the main repositories on GitHub. We will be using those for issues and pull requests in the future.
-
Small Technology Foundation Personal Web Prototype-01: a mobile personal web server
#SmallTechnologyFoundation #PersonalWeb #Prototype #SiteJS #RaspberryPi
-
12 hours later, I think I’ve finally worked out all the kinks in Firefox (and will properly implement them and issue more upstream pull requests tomorrow).
And that, ladies and gents, is web dev: minutes become hours… because browsers!
¯\_(ツ)_/¯