Round 260: Cloudflare ext, Firebase ext, Supabase ext, PlanetScale ext, Fly.io ext (20 commands)

ober

bdf943ad19058ca815364a42f0f985c150a4805b

diff --git a/docs/jemacs-vs-emacs.md b/docs/jemacs-vs-emacs.md
index a86dcbb..1890c09 100644
--- a/docs/jemacs-vs-emacs.md
+++ b/docs/jemacs-vs-emacs.md
@@ -4583,6 +4583,31 @@ No remaining Tier 1 gaps. All core editing, completion, and navigation features 
 | ebib-import-file | :orange_circle: | Import file into Ebib |
 | ebib-push-citation | :orange_circle: | Push Ebib citation to buffer |
 
+### Round 260 — Cloudflare ext, Firebase ext, Supabase ext, PlanetScale ext, Fly.io ext
+
+| Command | Status | Description |
+|---------|--------|-------------|
+| cloudflare-workers-list | :orange_circle: | List Cloudflare Workers |
+| cloudflare-pages-list | :orange_circle: | List Cloudflare Pages projects |
+| cloudflare-dns-list | :orange_circle: | List Cloudflare DNS records |
+| cloudflare-zones-list | :orange_circle: | List Cloudflare zones |
+| firebase-deploy | :orange_circle: | Deploy Firebase project |
+| firebase-auth-list | :orange_circle: | List Firebase auth users |
+| firebase-functions-list | :orange_circle: | List Firebase Cloud Functions |
+| firebase-hosting-list | :orange_circle: | List Firebase hosting sites |
+| supabase-db-push | :orange_circle: | Push Supabase database migrations |
+| supabase-functions-list | :orange_circle: | List Supabase edge functions |
+| supabase-migration-new | :orange_circle: | Create new Supabase migration |
+| supabase-status | :orange_circle: | Show Supabase project status |
+| planetscale-branch-list | :orange_circle: | List PlanetScale branches |
+| planetscale-deploy-request | :orange_circle: | Create PlanetScale deploy request |
+| planetscale-db-list | :orange_circle: | List PlanetScale databases |
+| planetscale-connect | :orange_circle: | Connect to PlanetScale database |
+| fly-deploy | :orange_circle: | Deploy to Fly.io |
+| fly-status | :orange_circle: | Show Fly.io app status |
+| fly-logs | :orange_circle: | View Fly.io logs |
+| fly-scale | :orange_circle: | Scale Fly.io instances |
+
 ### Round 259 — Azure ext, DigitalOcean, Heroku ext, Vercel ext, Netlify ext
 
 | Command | Status | Description |
diff --git a/src/jerboa-emacs/editor-extra-final.ss b/src/jerboa-emacs/editor-extra-final.ss
index d591a07..8c1da7c 100644
--- a/src/jerboa-emacs/editor-extra-final.ss
+++ b/src/jerboa-emacs/editor-extra-final.ss
@@ -20991,4 +20991,52 @@
 
 (def (cmd-netlify-functions-list app)
   (let* ((echo (app-state-echo app)))
-    (echo-message! echo "Netlify: listing functions")))
\ No newline at end of file
+    (echo-message! echo "Netlify: listing functions")))
+
+;;; Round 260 — Supabase ext, PlanetScale ext, Fly.io ext (batch 2)
+
+(def (cmd-supabase-migration-new app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Migration name: "
+      (lambda (name)
+        (echo-message! echo (str "Supabase: created migration " name))))))
+
+(def (cmd-supabase-status app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Supabase: showing project status")))
+
+(def (cmd-planetscale-branch-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "PlanetScale: listing branches")))
+
+(def (cmd-planetscale-deploy-request app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "PlanetScale: creating deploy request")))
+
+(def (cmd-planetscale-db-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "PlanetScale: listing databases")))
+
+(def (cmd-planetscale-connect app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Database: "
+      (lambda (db)
+        (echo-message! echo (str "PlanetScale: connecting to " db))))))
+
+(def (cmd-fly-deploy app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Fly.io: deploying application")))
+
+(def (cmd-fly-status app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Fly.io: showing app status")))
+
+(def (cmd-fly-logs app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Fly.io: viewing logs")))
+
+(def (cmd-fly-scale app)
+  (let* ((echo (app-state-echo app)))
+    (echo-read-string echo "Scale count: "
+      (lambda (count)
+        (echo-message! echo (str "Fly.io: scaling to " count " instances"))))))
\ No newline at end of file
diff --git a/src/jerboa-emacs/editor-extra-modes.ss b/src/jerboa-emacs/editor-extra-modes.ss
index 3cc025c..043d2cc 100644
--- a/src/jerboa-emacs/editor-extra-modes.ss
+++ b/src/jerboa-emacs/editor-extra-modes.ss
@@ -21616,3 +21616,45 @@
       (lambda (app-name)
         (echo-message! echo (str "Heroku: viewing logs for " app-name))))))
 
+;;; Round 260 — Cloudflare ext, Firebase ext, Supabase ext, PlanetScale ext, Fly.io ext (batch 1)
+
+(def (cmd-cloudflare-workers-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cloudflare: listing Workers")))
+
+(def (cmd-cloudflare-pages-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cloudflare: listing Pages projects")))
+
+(def (cmd-cloudflare-dns-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cloudflare: listing DNS records")))
+
+(def (cmd-cloudflare-zones-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Cloudflare: listing zones")))
+
+(def (cmd-firebase-deploy app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Firebase: deploying project")))
+
+(def (cmd-firebase-auth-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Firebase: listing auth users")))
+
+(def (cmd-firebase-functions-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Firebase: listing Cloud Functions")))
+
+(def (cmd-firebase-hosting-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Firebase: listing hosting sites")))
+
+(def (cmd-supabase-db-push app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Supabase: pushing database migrations")))
+
+(def (cmd-supabase-functions-list app)
+  (let* ((echo (app-state-echo app)))
+    (echo-message! echo "Supabase: listing edge functions")))
+
diff --git a/src/jerboa-emacs/editor-extra-regs2.ss b/src/jerboa-emacs/editor-extra-regs2.ss
index 6958e73..117c8a8 100644
--- a/src/jerboa-emacs/editor-extra-regs2.ss
+++ b/src/jerboa-emacs/editor-extra-regs2.ss
@@ -6877,4 +6877,25 @@
   (register-command! 'netlify-sites-list cmd-netlify-sites-list)
   (register-command! 'netlify-env-list cmd-netlify-env-list)
   (register-command! 'netlify-functions-list cmd-netlify-functions-list)
+  ;; Round 260
+  (register-command! 'cloudflare-workers-list cmd-cloudflare-workers-list)
+  (register-command! 'cloudflare-pages-list cmd-cloudflare-pages-list)
+  (register-command! 'cloudflare-dns-list cmd-cloudflare-dns-list)
+  (register-command! 'cloudflare-zones-list cmd-cloudflare-zones-list)
+  (register-command! 'firebase-deploy cmd-firebase-deploy)
+  (register-command! 'firebase-auth-list cmd-firebase-auth-list)
+  (register-command! 'firebase-functions-list cmd-firebase-functions-list)
+  (register-command! 'firebase-hosting-list cmd-firebase-hosting-list)
+  (register-command! 'supabase-db-push cmd-supabase-db-push)
+  (register-command! 'supabase-functions-list cmd-supabase-functions-list)
+  (register-command! 'supabase-migration-new cmd-supabase-migration-new)
+  (register-command! 'supabase-status cmd-supabase-status)
+  (register-command! 'planetscale-branch-list cmd-planetscale-branch-list)
+  (register-command! 'planetscale-deploy-request cmd-planetscale-deploy-request)
+  (register-command! 'planetscale-db-list cmd-planetscale-db-list)
+  (register-command! 'planetscale-connect cmd-planetscale-connect)
+  (register-command! 'fly-deploy cmd-fly-deploy)
+  (register-command! 'fly-status cmd-fly-status)
+  (register-command! 'fly-logs cmd-fly-logs)
+  (register-command! 'fly-scale cmd-fly-scale)
 )