Appearance
Legacy documentation
In April 2026, we released a major update that changes how external services and data are integrated with WeWeb projects. This section of the WeWeb user documentation is dedicated to Legacy features that are still supported but no longer the recommended way of building new projects.
Legacy documentation pages don’t come up in the search bar so that results stay focused on how WeWeb works today. If you are looking for information about “Plugins” or “Collections”, start from here.
STARTING A NEW PROJECT?
New projects no longer use “Plugins” or “Collections”. You connect external services with “Integrations” and you store and load your data with “Tables” and “Views” in the Data & API tab.
What replaces each legacy feature
If you are moving an older project to the current way of working, or just want to know where a feature went, this table shows what to use instead.
Plugins
Plugins were the first way to connect a WeWeb app to an external service. You installed them from the Plugins panel, then used their actions in workflows.
Data source plugins
These plugins loaded data from an external backend into your app.
| Plugin | What it did |
|---|---|
| Supabase | Loaded data from a Supabase database |
| Xano | Loaded data from Xano endpoints |
| REST API | Sent requests to any REST API |
| Airtable | Loaded records from an Airtable base |
| Algolia | Searched an Algolia index |
| SmartSuite | Loaded records from SmartSuite |
| SQL | Ran SQL queries on a database |
Authentication plugins
These plugins let users sign in to your app through an external service.
Extension plugins
These plugins added a feature to your app, like a map, a chart or tracking.
| Plugin | What it did |
|---|---|
| Calendly | Embedded Calendly scheduling |
| Charts | Displayed charts |
| Google Maps | Displayed a Google map |
| Mapbox | Displayed a Mapbox map |
| NPM | Loaded packages from NPM |
| OpenAI | Sent prompts to OpenAI |
| PWA | Turned your app into a progressive web app |
| Sound | Played sounds |
| Stripe | Took payments with Stripe |
| WeWeb Email | Sent emails from the interface |
| Google Tag Manager | Added Google Tag Manager tracking |
| Segment | Sent tracking events to Segment |
Self-hosting a project that uses plugins
Some plugins rely on WeWeb's microservices and stop working when you self-host. Self-hosting legacy projects lists which plugins keep working and how to replace the others.
Collections
A collection was a set of data loaded from an external source, usually through a data source plugin. Pages and workflows then read their data from it.
| Page | What it covers |
|---|---|
| Intro to collections | What collections are and how to create one |
| Joining data from multiple collections | Combining data from two collections |
| Static collection pages | Creating one page per item of a collection |
| Fetch collection | Loading a collection's data again from a workflow |
| Fetch collections in parallel | Loading several collections at once |
| Update collection | Changing a collection's data without loading it again |
The Dynamic collection pages guide is a current page, but its Collection-based setup section still covers the collection approach.
Supabase plugin pages
These pages cover the workflow actions and the realtime features of the Supabase plugin. With the Supabase integration, you get the same actions from the Integrations panel, and you listen to live changes with Supabase Realtime.
| Page | What it covers |
|---|---|
| Database select | Loading rows from a Supabase table |
| Database insert | Adding rows to a Supabase table |
| Database update | Changing rows in a Supabase table |
| Storage upload file | Sending a file to Supabase storage |
| Call Postgres function | Running a function of your Supabase database |
| Invoke edge function | Running a Supabase edge function |
| Intro to Supabase realtime | Listening to live updates with the plugin |
| Subscribe to channels | Joining a realtime channel |
| Broadcast messages | Sending messages to everyone on a channel |
| Database changes | Reacting when rows change |
| Presence state | Seeing who is online |
Xano plugin realtime pages
These pages cover the realtime actions of the Xano data source plugin. With the Xano integration, see Xano realtime.
| Page | What it covers |
|---|---|
| Intro to Xano realtime | Setting up realtime with the plugin |
| Open and close a Xano channel | Joining and leaving a channel |
| Send and receive messages | Exchanging messages on a channel |
| Presence information | Seeing who is on a channel |
| Get channel history | Loading past messages of a channel |
Deprecated actions
| Action | What to use today |
|---|---|
| Upload file (Legacy) | Store files with WeWeb storage, and send them from the interface with the Upload file to signed URL action |
Deprecated elements
These elements have been replaced by newer ones. They keep working in the projects that use them.
| Element | What it did |
|---|---|
| Alert | Displayed an alert message |
| Calendar | Displayed events in a calendar |
| Data Grid | Displayed data in a table |
| Drag and Drop Files | Let users upload files by dragging them |
| Modal | Displayed content in a modal window |
CONTINUE LEARNING
Ready to move an older project to the current way of working? Start with integrations, which replace plugins for connecting external services.

