Build something useful
From your first API to a working web app
Choose a task, follow the workflow and understand what you are building. These guides connect your database, API and interface, with checks that help you move beyond the happy path.
Build your backend
Start with a working API, then add data and accounts.
Build a REST API without writing code
Create a small API that saves and retrieves tasks. Learn how inputs, database commands and outputs fit together before connecting a frontend.
Read the guide Practical guideBuild signup and login APIs without code
Generate the account workflows, then test what a signed-in user can actually access. Use sample accounts throughout.
Read the guide Practical guideGenerate CRUD endpoints from a database table
Use the endpoint generator for the repetitive operations, then tailor the API to the data your application should expose.
Read the guideBuild a complete app
Create a portal, internal tool or business workflow around one useful journey.
Build a task-management web app
Build a focused first version: add a task, choose its status and see the saved tasks on a page. Extend it to personal accounts after the core flow works.
Read the guide Practical guideBuild a customer portal without code
Create a customer portal with login, private records and file access. Start with a page draft, connect authorized endpoints and test the customer journey.
Read the guide Practical guideBuild an inventory management app without code
Build an inventory interface with products, stock movements and low-stock views. Connect validated backend updates and test failed and repeated adjustments.
Read the guide Practical guideBuild an app with Twidget Assistant
Turn an app idea into a reviewed Twidget proposal. Inspect pages, tables and workflows, save drafts, then test behavior and access before publishing.
Read the guide Practical guideBuild an approval workflow app without code
Create a request-and-review app with a deliberate status lifecycle, separate reviewer permissions and an auditable decision record. Start from an approvals page draft.
Read the guide Practical guideBuild a simple CRM without code
Model contacts, companies, deals and follow-up tasks in Twidget. Build a staff interface, connect controlled updates and test a small sales workflow.
Read the guide Practical guideBuild a support ticket system without code
Create a ticket queue with customer submissions, staff assignments and public replies. Keep internal notes separate and test customer access before release.
Read the guide Practical guideBuild a booking request app without code
Build a request-and-confirm booking workflow with dates, capacity rules and clear customer status. Distinguish a submitted request from a confirmed reservation.
Read the guide Practical guideBuild a purchase request app without code
Create itemized purchase requests with explicit currency, calculated totals and staff review. Track decisions separately from orders, payments and received goods.
Read the guideConnect the rest of your app
Build the interface, work with files and connect services.
Create a file-upload API without code
Configure a custom endpoint around the documented Upload file command, then check storage and access with a disposable sample before connecting a page.
Read the guide Practical guideConnect an external API to a Twidget workflow
Make a request from a server workflow, inspect the provider response and return only the data your application needs.
Read the guide Practical guideSchedule API and database workflows without code
Build a background workflow that refreshes a small catalogue, then check its timing and repeat behavior before enabling a recurring schedule.
Read the guide Practical guideTurn CSV data into an API
Move a small catalogue from a CSV file into a typed database table, then make the reviewed records available through an API.
Read the guide Practical guideReceive webhooks without code
Create a receiver for a small sample event. Understand its inputs, response and failure cases before connecting a real event provider.
Read the guide Practical guideConnect a React frontend to Twidget
Keep your React interface and use Twidget for its API. Start with a read-only task list, agree on the response and check the browser connection before adding writes.
Read the guide Practical guideValidate API requests and return useful errors
Use a synthetic event receiver to separate required inputs from business rules, inspect a rejected request and design useful client-facing failures.
Read the guide Practical guideFilter, sort and paginate a REST API
Turn a growing task list into a predictable API response. Connect query inputs to the database command and check where each page begins and ends.
Read the guide Practical guideLet users access only their own records
A valid login identifies the caller. Add ownership checks to every operation so another customer’s record ID cannot grant access to their data.
Read the guide Practical guideCreate an API for an existing PostgreSQL database
Keep records in PostgreSQL and expose a small read endpoint. Use a restricted connection, separate SQL parameters and an explicit response contract.
Read the guide Practical guideBuild a lead capture form with a database
Collect a small enquiry, save it through a reviewed backend workflow and give the visitor clear feedback without losing their message when a request fails.
Read the guide Practical guideBuild a dashboard from database records
Turn a small orders table into useful summary numbers. Calculate the results in a backend workflow, then display a clear period, total and count in your interface.
Read the guide Practical guideBuild an API with related database tables
Store a project reference on each task, retrieve matching records and return a deliberate API response. Keep relationship lookup separate from validation and access control.
Read the guide Practical guideBuild a forgot-password and reset-password flow
Add account recovery to customer authentication. Review the current recovery commands, prepare controlled email delivery and verify the full reset lifecycle before release.
Read the guide Practical guidePrevent duplicate webhook processing
Make repeated delivery safe for a small database workflow. Store an event receipt and its business change together, then test replay and failure boundaries.
Read the guide Practical guideRun a workflow when database records change
Connect a table change to a published event. Build a small internal audit example and understand which writes trigger it, what the event receives and how failures behave.
Read the guide Practical guideSet API rate limits and handle 429 responses
Bound API usage in a test workspace, understand who shares an allowance and give clients a clear way to wait after a rejected request.
Read the guide Practical guideSend transactional emails from a Twidget app
Configure a server-side email command for a saved app action. Map a deliberate recipient and message, distinguish isolated tests from delivery, and handle failures.
Read the guide Practical guideExport Twidget database records to CSV
Export a table or filtered records from the Twidget editor. Check the workspace, export scope, downloaded row count and structured values before sharing the file.
Read the guide Practical guideBuild a multi-step form in Twidget
Split a longer form into details, request and review steps using page state and functions. Preserve entered values, validate on the server and test backward navigation.
Read the guideBuild usable data interfaces
Connect edit forms, detail views, table navigation and shared page sections.
Build an edit form for an existing database record
Load one authorized record into a Twidget form, save only permitted changes and handle missing records, validation failures and stale edits.
Read the guide Practical guideConnect a page table to a paginated API
Load bounded database results into a Twidget table, reset pagination when filters change and handle empty pages without treating failures as no results.
Read the guide Practical guideBuild a dynamic record-detail page
Use a page path parameter to load one permitted record, separate unavailable and failed states, and build links that survive refresh and direct navigation.
Read the guide Practical guideMake page filters shareable with URL parameters
Read filter values from a Twidget page URL, validate them before querying data and preserve a useful shareable state without putting private data in links.
Read the guide Practical guideBuild reusable page components in Twidget
Create a shared component with explicit variables, place it on two pages and review the effect of publishing a change across its consumers.
Read the guide Practical guideShow conditional sections, loading and empty states
Use explicit page state to show the right Twidget section, keep request errors separate from empty results and preserve backend access controls.
Read the guideReuse and control backend work
Keep secrets private, apply shared checks and make deliberate database changes.
Keep third-party API secrets in backend workflows
Reference a Twidget global variable from a server-side HTTP request, separate development and production credentials and check responses for accidental disclosure.
Read the guide Practical guideReuse API checks with Twidget middleware
Build and test reusable before/after middleware, choose merge versus replacement behavior and attach it without accidentally changing every workspace workflow.
Read the guide Practical guideAdd or update a record using a stable key
Configure an upsert with a unique business key, limit which fields it may change and test repeated or competing submissions without assuming exactly-once processing.
Read the guide Practical guideIncrement a database counter without read-and-overwrite
Use Twidget’s Increment or Decrement Field command for a controlled numeric change, then test bounds, concurrent requests and repeated-event behavior.
Read the guideImprove everyday app workflows
Handle uploads, form feedback, reusable logic and controlled record changes.
Build a file-upload form in Twidget
Connect a page form to a multipart upload endpoint, show useful loading and error states, and verify the saved file before displaying success.
Read the guide Practical guideBuild and test a multiple-file upload API
Review the generated multiple-file endpoint, define batch limits and partial-failure behavior, and connect a client without assuming every file was saved.
Read the guide Practical guideAdd archive and restore to a database app
Implement soft deletion with explicit archive state, protected restore actions and consistent filters across lists, details and related records.
Read the guide Practical guideBuild an application audit log in Twidget
Record who changed a business record, preserve the action and outcome, and test whether audit entries stay consistent with database changes.
Read the guide Practical guideReuse backend logic with custom functions
Extract repeated Twidget commands into a typed custom function, map inputs and outputs, and test callers without moving browser logic into the backend.
Read the guide Practical guideBuild dependent dropdowns from database records
Connect category and product dropdowns, clear stale selections, handle slow responses and validate the selected relationship on the backend.
Read the guide Practical guideBuild a safe bulk-update workflow
Let staff update selected records with bounded inputs, per-record authorization, a clear partial-failure policy and checks against unintended writes.
Read the guide Practical guideSet API response status codes and headers
Configure successful Twidget API responses, choose between 200, 201, 202 and 204, and verify the published status, headers and body together.
Read the guide Practical guideShow useful form validation errors
Connect backend validation to field and form messages, preserve entered values, and distinguish rejected input from network or permission failures.
Read the guide Practical guideEnforce expiry dates in an API workflow
Store a clear expiry instant, enforce it on every protected action, and separate immediate access checks from scheduled cleanup.
Read the guideTest, protect and release
Check permissions, reproduce failures and publish reviewed changes.
Add admin and customer permissions to an app
Separate staff actions from customer access. Resolve roles on the server, restrict writable fields and test direct requests as well as hidden interface controls.
Read the guide Practical guideDeploy a Twidget app from development to production
Prepare a reviewed Dev-to-Prod workflow release, check dependencies and environment values, then verify the released endpoints and separately published pages.
Read the guide Practical guideTest an API workflow across multiple endpoints
Save an ordered API test suite, pass captured values between requests and assert the record lifecycle. Understand isolated data, published versions and cleanup results.
Read the guide Practical guideDebug a failing API workflow in Twidget
Reproduce a failed workflow with synthetic inputs, inspect its execution trace and use isolated breakpoints to find the first incorrect command or output.
Read the guideFind the right product fit
Explore the Twidget workflow and compare the approach with other platforms.
Build and test REST APIs without writing code
Create database endpoints, add authentication checks and build custom logic visually. Inspect each response before connecting your frontend.
Read the guide No-code backendGive your app a backend you can build and inspect
Keep your data, account workflows and server logic together. Twidget connects database tables, API endpoints, files and scheduled events through visual commands.
Read the guide Full-stack web app builderBuild full-stack web apps with AI and visual tools
Create your frontend, database and backend in one platform. Build connected pages, API workflows and authentication with visual tools and AI assistance.
Read the guide Build tools for your teamNo-code internal tool builder
Build internal tools with tables, forms, dashboards and backend workflows. Review a records-manager example and choose the controls your team needs.
Read the guide Customer portalsBuild a customer portal around your own workflow
Give customers a place to see their requests and submit information. Build the interface and backend together, with deliberate control over what each account can access.
Read the guide App examplesChoose an app example and build one working journey
Choose a project close to your own process. Review a genuine starter layout, then follow its guide to connect data, permissions and saved actions.
Read the guide Compare approachesTwidget vs Xano: choose the workflow your app needs
Both products can help you build APIs visually. The useful question is how you want to build, connect and maintain the rest of your application.
Read the guide Compare approachesTwidget vs Supabase: visual commands or a Postgres foundation?
Twidget brings tables, endpoint workflows and pages together visually. Supabase gives developers a Postgres foundation with APIs, Auth and other backend services.
Read the guide Compare approachesTwidget vs Retool for internal tools
Use the same request-review project to decide how you want to connect data, express business rules and maintain the interface your team uses.
Read the guide Compare approachesTwidget vs Bubble for a complete web app
Both products offer a path from data to a browser app. Compare how you build the interface, enforce private data access and connect the backend to other systems.
Read the guide