Connected to Supabase · table “kv”
Use CloudDB for data that's the SAME for every user, on every device. It's backed by your Supabase project. Calls are async, so use await.
await CloudDB.set(k, v)Save (shared by all users)
await CloudDB.get(k)Read it back (or null)
await CloudDB.remove(k)Delete one key
await CloudDB.all()Whole table as an object
<!-- Shared across ALL users. Paste into a card and Run. -->
<script>
async function main() {
// Save a value everyone shares
await CloudDB.set('announcement', 'Hello world');
// Read it (any user, any device sees the same thing)
const msg = await CloudDB.get('announcement');
console.log(msg);
// A shared counter
let n = (await CloudDB.get('visits')) || 0;
await CloudDB.set('visits', n + 1);
// Everything
const everything = await CloudDB.all(); // { announcement:'...', visits: 12 }
}
main();
</script>
Use MeroDB for fast LOCAL data saved in this browser (per device). No await needed. MeroDB.shared is shared between mini-sites on the same device.
MeroDB.set(k, v)Save any JSON value
MeroDB.get(k)Read it back (or null)
MeroDB.remove(k)Delete one key
MeroDB.all()Whole database object
<!-- Local to this browser. Paste into a card and Run. -->
<script>
MeroDB.set('profile', { name: 'Marwan', level: 7 });
const profile = MeroDB.get('profile'); // persists between runs
MeroDB.shared.set('theme', 'dark'); // shared across mini-sites (this device)
</script>
Heads up: CloudDB uses the public anon key, so with the “public access” table policy anyone can read/write. Fine for shared demos; lock the policy down for anything sensitive.