Stack logo
Sync up on the latest from Convex.
Featured articles
All articles
We can categorize sync platforms across nine dimensions: data size, data update rate, the structure of the data, input latency, offline support, number of concurrent clients, centralization, flexibility, and consistency.
A Map of Sync
Convex Components enable an ecosystem of powerful building blocks to reduce the amount of code you have to write and maintain yourself. Geospatial search, Expo push notifications, LaunchDarkly feature flags, durable function workflows, and more.
Sync platforms like Convex simplify distributed state management, ensuring that developers can focus on building their applications rather than managing backend complexities.
I’m excited to announce Convex Swift, which unlocks the ability to build iOS and MacOS clients for your Convex app.
Triggers automatically run code whenever data in a table changes. A library in the convex-helpers npm package allows you to attach trigger functions to your Convex database.
Featured videos
All videos
multiple puzzle pieces connecting with circuitry to some main technology, to represent convex components.
Convex Components enable an ecosystem of powerful building blocks to reduce the amount of code you have to write and maintain yourself. Geospatial search, Expo push notifications, LaunchDarkly feature flags, durable function workflows, and more.
Ian Macartney's avatar
Ian Macartney
15 days ago
Lightning bolt to represent trigger and alert on computer
Triggers automatically run code whenever data in a table changes. A library in the convex-helpers npm package allows you to attach trigger functions to your Convex database.
Lee Danilek's avatar
Lee Danilek
a month ago
Image of a branch, referencing a github repository, next to a shield, which represents type safety.
Turns out, you can organize your Convex project across multiple repositories! Check out this guide on how to implement this in your project.
Jordan Hunt's avatar
Jordan Hunt
2 months ago
The term CRUD, or CRUD API, is often tossed around when interacting with databases or building backend APIs. This article will examine what CRUD is, what it’s suitable for, and its shortcomings. Finally, we’ll explore how to quickly implement a CRUD API using a modern backend like Convex.
Jamie Turner's avatar
Jamie Turner
2 months ago
Convex offers robust control over pagination with a powerful function, getPage, enabling complex edge cases. In this article, we go over how to use that function in your Convex app.
Lee Danilek's avatar
Lee Danilek
4 months ago
With Convex's magic query cache, Convex's powerful subscriptions are cached, not merely values. So you get fast, jank-free renders with no cache consistency or invalidation headaches.
Jamie Turner's avatar
Jamie Turner
5 months ago
Log streams like Axiom and Datadog can be used to provide powerful querying and alerting on logs and errors from your Convex functions, helping with debugging issues when they come up and providing early insights to detect smaller issues before they become bigger. This article covers how to do the several common things with either Axiom or Datadog hooked up as a Convex log stream including filtering to a request, logging structured metadata, and visualizing usage.
Sarah Shader's avatar
Sarah Shader
5 months ago
By leveraging HTTP actions with streaming, this chat app balances real-time responsiveness with efficient bandwidth usage. Users receive character-by-character updates to their own responses directly from ChatGPT, while other users see periodic updates, minimizing database bandwidth.
Sarah Shader's avatar
Sarah Shader
5 months ago
You'll often want to retrieve unique records from your database. While SELECT DISTINCT is the traditional way to do this in SQL databases, we've improved on this pattern in Convex by making it more consistent.
Nipunn Koorapati's avatar
Nipunn Koorapati
5 months ago
Introducing v1, a SaaS starter inspired by Midday’s SaaS starter setup, featuring a boilerplate for mono repo management, subscription emails, and more—all tailored for Convex. This version includes built-in CRUD, theming, billing, and a streamlined CLI for setup; you can try it out at convex-v1.run and find the repo on GitHub.
Shawn Erquhart's avatar
Shawn Erquhart
40 minutes ago
Cover image for the video
12:02
Convex Components enable an ecosystem of powerful building blocks to reduce the amount of code you have to write and maintain yourself. Geospatial search, Expo push notifications, LaunchDarkly feature flags, durable function workflows, and more.
Ian Macartney's avatar
Ian Macartney
15 days ago
multiple puzzle pieces connecting with circuitry to some main technology, to represent convex components.
I’m excited to announce Convex Swift, which unlocks the ability to build iOS and MacOS clients for your Convex app.
Convex for Swift illustration
The React Hook useState is probably used more than necessary. We'll go over how you can port those usages over to Convex with simple queries and mutations.
Celine Soeiro's avatar
Celine Soeiro
a month ago
useState() with a hook extending from the text to represent react hooks
I was curious to see if I could prompt my way through developing an entire app with Cursor and Claude. It went pretty well - but there are some important caveats to keep in mind.
Tom Redman's avatar
Tom Redman
a month ago
Screenshot of Cursor Composer with the text "Cursor, do my job for me"
It was my goal to create an API that both feels natural to Android developers who have kept up with modern application architecture principles, as well something that feels like a natural fit in the Convex ecosystem.
Image of phone with gears and pencil next to it to represent mobile dev.
Even though Convex supports the creation of cron jobs out of the box, until now, we've only supported static jobs. With user space crons, we now support the programmatic definition of crons at runtime.
James Cowling's avatar
James Cowling
4 months ago
icon of a gear and timer, representing scheduled cron jobs
Convex offers robust control over pagination with a powerful function, getPage, enabling complex edge cases. In this article, we go over how to use that function in your Convex app.
Lee Danilek's avatar
Lee Danilek
4 months ago
a page 1 icon and some brackets with ellipsis to represent pagination
We can categorize sync platforms across nine dimensions: data size, data update rate, the structure of the data, input latency, offline support, number of concurrent clients, centralization, flexibility, and consistency.
A Map of Sync
Sync platforms like Convex simplify distributed state management, ensuring that developers can focus on building their applications rather than managing backend complexities.
Sync icons in zen garden
Even though Convex supports the creation of cron jobs out of the box, until now, we've only supported static jobs. With user space crons, we now support the programmatic definition of crons at runtime.
icon of a gear and timer, representing scheduled cron jobs
Screenshot of Cursor Composer with the text "Cursor, do my job for me"
I was curious to see if I could prompt my way through developing an entire app with Cursor and Claude. It went pretty well - but there are some important caveats to keep in mind.
Tom Redman's avatar
Tom Redman
a month ago
Icon of a person throwing a ball for a dog to fetch and a stream on the right, representing the post title
Learn the basics of HTTP streaming with Convex by re-implementing OpenAI's SDK using built-in fetch and async iterators. No npm dependencies needed.
Ian Macartney's avatar
Ian Macartney
5 months ago
ai chat robot next to a river stream representing http streaming
By leveraging HTTP actions with streaming, this chat app balances real-time responsiveness with efficient bandwidth usage. Users receive character-by-character updates to their own responses directly from ChatGPT, while other users see periodic updates, minimizing database bandwidth.
Sarah Shader's avatar
Sarah Shader
5 months ago
Implementing "work stealing" - a workload distribution strategy - using Convex's reactive database.
Ian Macartney's avatar
Ian Macartney
6 months ago
I recently built a full-stack app called notesGPT. It allows you to record a voice note, transcribes it, and extract action items and display them as action items. It’s fully open source and comes equipped with authentication, storage, vector search, action items, and is fully responsive on mobile for ease of use.
Hassan El Mghari's avatar
Hassan El Mghari
9 months ago
Using Convex, 4 web devs built their own fullstack app based on this prompt: > Build a way to show real-time updates on the website for a Dungeons and Dragons-themed small business! See what they built, learn how they did it, and watch their reactions to each other's work in this installment of the "4 Web Devs, 1 App Idea" video series.
Jason Lengstorf's avatar
Jason Lengstorf
10 months ago
This year vector databases have sprung up like mushrooms to enable applications to retrieve context based on semantic search. A large portion of these applications have used the retrieved context to augment the ability of large language models (LLMs) in a pattern known as RAG. On November 7th OpenAI released its Assistants API, enabling the implementation of AI chat interfaces with context retrieval without needing a separate message store or vector database. Does this new API make vector databases obsolete?
Michal Srb's avatar
Michal Srb
a year ago
Convex is a full-stack development platform and cloud database, including built-in vector search. In this third post in our [series](https://stack.convex.dev/ai-chat-using-openai-assistants-api), we’ll build an AI-powered chat interface using Convex, with our own message storage and context retrieval.
Michal Srb's avatar
Michal Srb
a year ago
In this second post in our series, we’ll build an AI-powered chat interface using LangChain and its new Convex integration.
Michal Srb's avatar
Michal Srb
a year ago