diff --git a/modules/rmeets/mod.ts b/modules/rmeets/mod.ts
index ad91c8d..d730b1d 100644
--- a/modules/rmeets/mod.ts
+++ b/modules/rmeets/mod.ts
@@ -466,6 +466,59 @@ routes.get("/:room", (c) => {
}));
}
+ // Minimal mode — full-screen Jitsi without rSpace shell (for scheduled meeting links)
+ if (c.req.query("minimal") === "1" || c.req.query("join") === "1") {
+ const jitsiRoom = encodeURIComponent(room);
+ return c.html(`
+
+
+
+
+${escapeHtml(room)} — Meeting
+
+
+
+
+
+
+
+`);
+ }
+
return c.html(renderShell({
title: `${room} — rMeets | rSpace`,
moduleId: "rmeets",
diff --git a/server/index.ts b/server/index.ts
index efb63c6..b12741d 100644
--- a/server/index.ts
+++ b/server/index.ts
@@ -2936,6 +2936,7 @@ for (const mod of getAllModules()) {
// Landing page: rspace.online/ → server-rendered main landing
app.get("/", (c) => {
+ c.header("Cache-Control", "no-cache, no-store, must-revalidate");
return c.html(renderMainLanding(getModuleInfoList()));
});
@@ -3352,7 +3353,7 @@ const server = Bun.serve({
redirectUrl = `https://rspace.online/${standaloneModuleId}${remainingPath}`;
}
if (url.search) redirectUrl += url.search;
- return Response.redirect(redirectUrl, 301);
+ return Response.redirect(redirectUrl, 302);
}
// ── WebSocket upgrade ──