home.social

#sitejs — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #sitejs, aggregated by home.social.

  1. 👋🤓 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): codeberg.org/small-tech/auto-e

    • Auto Encrypt Localhost (automatic localhost TLS certificates): codeberg.org/small-tech/auto-e

    • @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): codeberg.org/small-tech/https

    • JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: 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:

    sitejs.org

    For its successor, please see Kitten:

    kitten.small-web.org

    If you want to support our work at the Small Technology Foundation, please consider becoming a patron:

    small-tech.org/fund-us

    :kitten:💕

    ¹ ar.al/2024/06/24/small-web-com
    ² ar.al/2019/08/26/introducing-s
    ³ Using our instance of Look Over There!: look-over-there.small-web.org

    #SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS

  2. 👋🤓 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): codeberg.org/small-tech/auto-e

    • Auto Encrypt Localhost (automatic localhost TLS certificates): codeberg.org/small-tech/auto-e

    • @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): codeberg.org/small-tech/https

    • JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: 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:

    sitejs.org

    For its successor, please see Kitten:

    kitten.small-web.org

    If you want to support our work at the Small Technology Foundation, please consider becoming a patron:

    small-tech.org/fund-us

    :kitten:💕

    ¹ ar.al/2024/06/24/small-web-com
    ² ar.al/2019/08/26/introducing-s
    ³ Using our instance of Look Over There!: look-over-there.small-web.org

    #SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS

  3. 👋🤓 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): codeberg.org/small-tech/auto-e

    • Auto Encrypt Localhost (automatic localhost TLS certificates): codeberg.org/small-tech/auto-e

    • @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): codeberg.org/small-tech/https

    • JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: 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:

    sitejs.org

    For its successor, please see Kitten:

    kitten.small-web.org

    If you want to support our work at the Small Technology Foundation, please consider becoming a patron:

    small-tech.org/fund-us

    :kitten:💕

    ¹ ar.al/2024/06/24/small-web-com
    ² ar.al/2019/08/26/introducing-s
    ³ Using our instance of Look Over There!: look-over-there.small-web.org

    #SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS

  4. 👋🤓 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): codeberg.org/small-tech/auto-e

    • Auto Encrypt Localhost (automatic localhost TLS certificates): codeberg.org/small-tech/auto-e

    • @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): codeberg.org/small-tech/https

    • JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: 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:

    sitejs.org

    For its successor, please see Kitten:

    kitten.small-web.org

    If you want to support our work at the Small Technology Foundation, please consider becoming a patron:

    small-tech.org/fund-us

    :kitten:💕

    ¹ ar.al/2024/06/24/small-web-com
    ² ar.al/2019/08/26/introducing-s
    ³ Using our instance of Look Over There!: look-over-there.small-web.org

    #SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS

  5. 👋🤓 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): codeberg.org/small-tech/auto-e

    • Auto Encrypt Localhost (automatic localhost TLS certificates): codeberg.org/small-tech/auto-e

    • @small-tech/https (drop-in Node.js https module replacement with automatic TLS certs everywhere): codeberg.org/small-tech/https

    • JSDB: In-process, in-memory JavaScript database that persists to append-only JavaScript logs: 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:

    sitejs.org

    For its successor, please see Kitten:

    kitten.small-web.org

    If you want to support our work at the Small Technology Foundation, please consider becoming a patron:

    small-tech.org/fund-us

    :kitten:💕

    ¹ ar.al/2024/06/24/small-web-com
    ² ar.al/2019/08/26/introducing-s
    ³ Using our instance of Look Over There!: look-over-there.small-web.org

    #SiteJS #SmallWeb #SmallTech #peerToPeerWeb #SmallTechnologyFoundation #AutoEncrypt #AutoEncryptLocalhost #JSDB #JavaScriptDatabase #https #TLS

  6. 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) :)

    kitten.small-web.org/reference

    (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⁶.)

    ¹ small-tech.org
    ² sitejs.org
    ³ gohugo.io/
    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 kitten.small-web.org/reference).
    codeberg.org/small-tech/jsdb

    #Kitten #REPL #shell #JavaScript #database #JavaScriptDatabase #JSDB #SmallTechnologyFoundation #SiteJS #Hugo #web #dev #NodeJS

  7. 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:💕

    ¹ 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 :)
    codeberg.org/small-tech/auto-e

    #SiteJS #Kitten #Owncast #SmallWeb #SmallTech #announcement #notice

  8. So I guess Let’s Encrypt has decided what I’ll be working on today then…

    letsencrypt.org/2024/12/05/end

    (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.)

    ¹ codeberg.org/small-tech/auto-e
    ² codeberg.org/small-tech/auto-e
    ³ codeberg.org/small-tech/https
    small-tech.org
    kitten.small-web.org

    #SmallWeb #SmallTech #TLS #SSL #HTTPS #LetsEncrypt #OCSP #AutoEncrypt #AutoEncryptLocalhost #SiteJS #Kitten

  9. 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.

    ¹ sitejs.org
    ² kitten.small-web.org

    #SiteJS #Kitten #SmallWeb

  10. Found Site.js a small personal web tool for #Linux, #macOS, and #Windows10. #siteJS

    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.

  11. 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.

    owncast.online/releases/owncas

    #owncast #siteJS #smallWeb #smallTech #liveStreaming

  12. Site.js 17.8.0 released.

    - Updates the version of Owncast installed with site enable --owncast to the latest (0.0.12)

    sitejs.org

    #owncast #siteJS #smallWeb #smallTech #liveStreaming

  13. 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 :)

    sitejs.org

    #owncast #siteJS #SmallWeb #SingleTenantWeb #SmallTech

  14. 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 :)

    sitejs.org

    #owncast #siteJS #SmallWeb #SingleTenantWeb #SmallTech

  15. 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 :)

    sitejs.org

    #owncast #siteJS #SmallWeb #SingleTenantWeb #SmallTech

  16. 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 :)

    sitejs.org

    #owncast #siteJS #SmallWeb #SingleTenantWeb #SmallTech

  17. 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

    sitejs.org

    #SiteJS #SmallWeb #Owncast

  18. 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! :)

    sitejs.org

    #SmallWeb #SiteJS #owncast

  19. 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.

    sitejs.org

    (Site.js is a small web server that we use to run all our own sites at Small Technology Foundation and personally.)

    #SiteJS #SmallWeb #SmallTech

  20. I’ve just updated Site.js to 17.5.0.

    Update: Installs latest @owncast (version 0.0.10)

    sitejs.org

    #SiteJS #SmallWeb #Owncast

  21. "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.

  22. 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 (github.com/small-tech/site.js/)

    sitejs.org

    #SiteJS

  23. 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.

    github.com/small-tech/site.js/

    #SiteJS #SmallWeb

  24. 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: github.com/small-tech/site.js/

    #siteJS #SmallTech #security

  25. 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 sitejs.org)

    #SiteJS #SmallWeb #SmallTech #JSDB

  26. 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… 🤔

    #elementaryOS #SiteJS #SmallTech

  27. 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

    See: owncast.online/quickstart/site

    sitejs.org

    #siteJS #SmallWeb #SmallTech

  28. 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 github.com/owncast/owncast/iss)

    sitejs.org

    #SmallTech #SmallWeb #SiteJS

  29. 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).

    owncast.online/quickstart/site

    CC @owncast

    #SmallTech #SmallWeb #SiteJS #Owncast

  30. 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*

    github.com/small-tech/site.js-

    :awesome:👍

    #WebSocket #RPC #SiteJS #SmallWeb #SmallTech

  31. 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.

    sitejs.org/

  32. 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.

    ar.al/2021/05/16/jsdb-migratio

    #JSDB #SiteJS #javascript #database #SmallTech

  33. 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).

    sitejs.org

    #SiteJS #SmallTech #SmallWeb

  34. 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.)

    sitejs.org

    #SiteJS #SmallTech #SmallWeb

  35. 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:

    github.com/small-tech/jsdb

    (This is what I mentioned I wanted to try last week in my post “What if data was code?” ar.al/2020/09/23/what-if-data-)

    #JSDB #JSDF #JDQL #SiteJS #SmallWeb #SmallTech

  36. 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:

    github.com/small-tech/jsdb

    (This is what I mentioned I wanted to try last week in my post “What if data was code?” ar.al/2020/09/23/what-if-data-)

    #JSDB #JSDF #JDQL #SiteJS #SmallWeb #SmallTech

  37. And if you want the same functionality but for localhost, check out auto-encrypt-localhost:

    github.com/small-tech/auto-enc

    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:

    sitejs.org

    #SmallTech #LetsEncrypt #NodeJS #AutoEncryptLocalhost #SmallWeb #SiteJS

  38. 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.

    github.com/small-tech

    #SiteJS #SmallTechnologyFoundation

  39. 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!

    ¯\_(ツ)_/¯

    #SiteJS #LiveReload #EventSource #SSE