DEV Community

Alex Spinov
Alex Spinov

Posted on

Convex Has a Free Reactive Backend — Real-Time Database with Built-in Functions

A developer building a collaborative app needed real-time sync, server functions, file storage, and authentication. Setting up each separately meant 4 different services.

Convex is a reactive backend platform. Database, server functions, file storage, scheduling - all in one. Data automatically syncs to clients in real-time.

What Convex Offers for Free

  • Reactive Queries - Data auto-updates on client when database changes
  • Server Functions - TypeScript functions that run on Convex
  • File Storage - Upload and serve files
  • Scheduling - Cron jobs and delayed functions
  • Authentication - Clerk, Auth0, custom auth integration
  • Full-Text Search - Built-in search
  • Free Tier - Generous limits for side projects

Quick Start

npm create convex@latest
Enter fullscreen mode Exit fullscreen mode
// convex/messages.ts
import { query, mutation } from './_generated/server'
import { v } from 'convex/values'

export const list = query(async (ctx) => {
  return await ctx.db.query('messages').order('desc').take(50)
})

export const send = mutation({
  args: { body: v.string(), author: v.string() },
  handler: async (ctx, args) => {
    await ctx.db.insert('messages', args)
  },
})
Enter fullscreen mode Exit fullscreen mode
// React component - auto-updates when data changes!
function Chat() {
  const messages = useQuery(api.messages.list)
  return messages?.map(m => <div>{m.author}: {m.body}</div>)
}
Enter fullscreen mode Exit fullscreen mode

Website: convex.dev - Free tier available


Need to monitor and scrape data from multiple web services automatically? I build custom scraping solutions. Check out my web scraping toolkit or email me at spinov001@gmail.com for a tailored solution.

Top comments (0)