Files
supabase/apps/www/data/home/api-examples.js
2023-11-20 14:48:52 -03:30

111 lines
2.8 KiB
JavaScript

export default [
{
lang: 'js',
title: 'Create user',
description: 'Sign up a new user in an example chat room',
code: `import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new user
const { user, error } = await supabase.auth.signUp({
email: '[email protected]',
password: 'example-password',
})
`,
},
{
lang: 'js',
title: 'Realtime subscriptions',
description: 'Receive realtime messages in an example chat room',
code: `import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Get notified of all new chat messages
const realtime = supabase
.from('messages')
.on('INSERT', message => {
console.log('New message!', message)
})
.subscribe()
`,
},
{
lang: 'js',
title: 'Create bucket',
description: 'Creates a new Storage bucket',
code: `import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new bucket
const { data, error } = await supabase
.storage
.createBucket('avatars', {
public: false,
allowedMimeTypes: ['image/png'],
fileSizeLimit: 1024
})
`,
},
{
lang: 'js',
title: 'Invoke Edge Function',
description: 'Invoke a Supabase Edge Function',
code: `import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Invoke a function
const { data, error } = await supabase.functions.invoke('hello', {
body: { foo: 'bar' }
})
`,
},
{
lang: 'js',
title: 'CRUD a record',
description: 'Create, Read, Update and Delete all public rooms and their messages',
code: `import { createClient } from '@supabase/supabase-js'
// Initialize
const supabaseUrl = 'https://chat-room.supabase.co'
const supabaseKey = 'public-anon-key'
const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new chat room
const newRoom = await supabase
.from('rooms')
.insert({ name: 'Supabase Fan Club', public: true })
// Get public rooms and their messages
const publicRooms = await supabase
.from('rooms')
.select(\`
name,
messages ( text )
\`)
.eq('public', true)
// Update multiple users
const updatedUsers = await supabase
.from('users')
.eq('account_type', 'paid')
.update({ highlight_color: 'gold' })
`,
},
]