Appbricx
Features

Build

  • Coding agents and MCP
  • UI components and hooks
  • Templates
  • Verify testing
  • Builder console

Data

  • Postgres database
  • Data API
  • Realtime

Users

  • Row-level security
  • Sign-in and auth
  • Organisations and teams
  • Payments

Logic

  • Workflows and jobs
  • Server functions and webhooks
  • AI in your app
  • Integrations

Ship and own

  • Backups and rollback
  • Hosting and domains
  • Self-host and export
All features
ShowcaseTemplatesIntegrationsPricingDocs
Log inStart free
  • Features
  • Showcase
  • Templates
  • Integrations
  • Pricing
  • Docs
  • Log in

Build

  • Coding agents and MCP
  • UI components and hooks
  • Templates
  • Verify testing
  • Builder console

Data

  • Postgres database
  • Data API
  • Realtime

Users

  • Row-level security
  • Sign-in and auth
  • Organisations and teams
  • Payments

Logic

  • Workflows and jobs
  • Server functions and webhooks
  • AI in your app
  • Integrations

Ship and own

  • Backups and rollback
  • Hosting and domains
  • Self-host and export
  1. Home
  2. Templates
  3. Blocks
  4. File uploader

File uploader

Adds an attachment table linked to one of your tables (tickets, jobs, orders, applications) and a FileAttachments component: drop files or choose them, add a note, and see each file with a thumbnail, its size and when it was added. Files go to your project's own storage through the platform, and anyone who can open the record can open its files, while people who can't see the record can't fetch them either. Customers add and remove files on their own records; staff see everything and get an All files list. Rules refuse files on records you can't open and keep a file on the record it was added to.

Use in AppbricxFree. Already have an account? Log in
View the files
File uploader: the Files page, added to Relay, on desktopFile uploader: the Files page, added to Relay, on a phone
  • File uploader: the Files page, added to Relay, on desktopDesktop
  • File uploader: the Files page, added to Relay, on a phonePhone
  • File uploader: the All files page for staff, in RelayStaff view

What it adds to your app

Table attachment: the record, the file, its name, type, size and a note. FileAttachments component with a Files page for every role. An All files list for staff.

Tables

  • attachment subject_id, file, name, mime, size_bytes, note, organisation_id

Pages

  • /files Files (@everyone)
  • /files-admin All files (@staff)

Components

  • FileAttachments Files attached to one ‹attach_to›: drop or choose files to upload, image thumbnails, notes, download, and delete where allowed

Rules on every write

  • attachment Choose a file to attach.
  • attachment You can only attach files to something you can open.
  • attachment An attachment stays on the record it was added to.
  • attachment An attachment belongs to the organisation of what it's on.

Set it up

It merges into the contract of an app you already have. Nothing is overwritten: a name you already use is refused until you pass a prefix.

  1. Pick the project

    Use the button above, or ask your coding agent with the Appbricx MCP server connected (quickstart).

  2. Point it at your tables and roles

    Leave out the ones with defaults; a wrong one is refused with the options your app has.

    ParamWhat it isExample
    attach_toThe table whose records get files.ticket
    org_fieldOptional: the ref on that table naming its organisation (from organisations-and-teams). Files then belong to that organisation and only its members see them. Optional.organisation_id
  3. Preview, then apply to dev

    A dry run shows the diff and the check report; applying it changes your dev environment only.

  4. Deploy

    When dev looks right, deploy. Production gets a snapshot first, so you can roll back.

Use it with your coding agent

The agent reads the template, runs a dry run, shows you the diff and applies it.

Prompt
Add the File uploader template (slug "file-uploader") to my Appbricx project. Read it with get_template, run use_template with dry_run first and show me the diff, then apply it. Ask me where it attaches if you can't tell from my contract (attach_to: attach files to; org_field: organisation (optional)).
MCP call
{
  "tool": "use_template",
  "arguments": {
    "slug": "file-uploader",
    "project_id": "<your project id>",
    "params": {
      "attach_to": "ticket",
      "org_field": "organisation_id"
    },
    "dry_run": true
  }
}
CLI
appbricx templates use file-uploader --param attach_to=ticket --param org_field=organisation_id --dry-run
Kind
Block
Category
Collaboration
Params
2 (1 required)
Version
1.0.0
Files
blocks/file-uploader
Published by
Appbricx, free

Goes well with

  • Huddle

    Realtime team chat: public and private channels, live messages, typing indicators, who's online, unread counts and @mentions.

    App · Collaboration
  • Margin

    Live document review: comments in the margin, replies, reactions and resolve, who's viewing, and edits that appear for every reader as they're saved.

    App · Collaboration
  • Corkboard

    Multiplayer sticky-note board for retros and planning: notes you add, edit, drag between lanes and vote on, live for everyone, with who's on the board and who's editing which note.

    App · Collaboration

Your agent adds it. Appbricx runs it.

Start freeAll templates
Appbricx

The backend, runtime and hosting for apps your coding agent builds. On our cloud, in yours, or on your own servers.

Features

Coding agents and MCPUI components and hooksTemplatesVerify testingBuilder consolePostgres databaseData APIRealtimeRow-level securitySign-in and authOrganisations and teamsPaymentsWorkflows and jobsServer functions and webhooksAI in your appIntegrationsBackups and rollbackHosting and domainsSelf-host and exportAll features

Product

ShowcaseTemplatesIntegrationsPricingFor coding agentsSelf-hostBring your own AI keyFAQ

Compare

Appbricx vs SupabaseLovable alternativeBolt alternativeFor freelancersFor agencies

Resources

DocumentationReferenceBlogSupportContact

© 2026 Appbricx. All rights reserved.

TermsPrivacyCookiesAcceptable Use