MARKETPLACE
PLUGINS
CAMERA/VIDEO CAPTURE BUBBLE MOBILE
Camera/Video Capture Bubble Mobile logo

Camera/Video Capture Bubble Mobile

Published September 2026
   •    Updated this week

Plugin details

Camera for native mobile apps: take photos, record videos, save them in your database.
Open the phone's camera inside your app, take a photo or record a video, check it, and keep it. The file goes straight into your app's file storage and your workflow gets a ready-to-save image or file — no uploader, no extra steps for the user.

The whole camera screen is drawn by the plugin, so it looks the same on iPhone and on Android and takes your brand colour: shutter, PHOTO / VIDEO switch, flash, self-timer, pinch to zoom, and framing guides for profile pictures, products or ID documents.

────────────────────────────────
🎬 DEMO
────────────────────────────────

DEMO: https://plugins-demo-2.bubbleapps.io/version-test/api/1.1/mobile/preview?debug_mode=true&preview_view=camera_capture
EDITOR: https://bubble.io/page?id=plugins-demo-2&test_plugin=1789490180567x715176237047480300_current&tab=Design&name=camera_capture&type=page&elements=bTGbY1

────────────────────────────────
✨ FEATURES
────────────────────────────────

Photos and videos with the same element — or lock it to photos only, or videos only.
Back and front camera, with a flip button, for product shots and selfies alike.
Flash off, auto or on for photos, and a torch that stays lit while recording video.
Pinch with two fingers to zoom, plus a Set Zoom action for your own controls.
Self-timer of 3 or 10 seconds, with a large countdown on screen.
Framing guides: a circle for profile pictures, a square for products, an ID-card frame for documents and receipts, or a rule-of-thirds grid. The area outside is dimmed so people know where to aim.
The guide never crops the photo — it is there to help frame the shot, and you always get the full picture.
Review with Retake and Use after every capture, with videos playing back in a loop. Turn it off and every capture is kept straight away.
The camera comes back instantly after Use, with no waiting screen and no progress bar in the way, so people can shoot one after another.
The file saves in the background and your workflow is told the moment it lands.
Saved straight into your database as an image, as a file, or as plain text — whichever your field needs.
Video length and quality under control: 480p, 720p or 1080p, and a maximum duration shown as a red ring around the shutter that stops recording by itself.
Videos with or without sound — and if the microphone is refused, the video is still recorded, just muted.
In the page or full screen: the element is the camera at the size and rounded corners you gave it, and the Open Camera action lifts the same camera over the whole screen and closes it once the shot is kept.
Save To Device on iPhone and Android — Save Image / Save Video on iOS, a folder picker opened on DCIM on Android, and a real download in the browser.
Your colour everywhere: the selected mode, the active flash and timer and the Use button all follow your accent colour, with text that stays readable on it.
Use your own buttons instead: hide the built-in controls and drive everything from workflow actions.
The camera never opens itself unless you ask it to, so your app can explain why it needs the camera before the phone asks — and you only get to ask once.
A refused camera is a clear screen, not a black rectangle: a plain explanation and a button that opens the phone's settings.
One camera at a time, handed back to the system as soon as it is not needed, so the next screen that needs it gets it.
A save that fails does not block anything: the reason appears over the camera, your workflow is told, and one action tries again.
Works in Bubble's web preview on your laptop's camera, so you can design the screen without picking up a phone.
Built-in diagnostics: one checkbox shows permissions, the last action received and every save attempt, so a support question has an answer.

────────────────────────────────
🔧 FULL WORKFLOW CONTROL
────────────────────────────────

19 states — file URL, photo, file, media type, local URI, width, height, video duration, is camera on, is fullscreen, is recording, recording time, is uploading, upload progress, camera mode, camera facing, flash mode, permission status, last error.
10 events — camera ready, media captured, media uploaded, upload failed, recording started, recording stopped, camera closed, permission denied, saved to device, camera error.
16 actions — Open Camera, Close Camera, Start Camera, Stop Camera, Take Photo, Start Recording, Stop Recording, Switch Camera, Set Mode, Set Flash, Set Zoom, Use Capture, Retake, Upload Media, Save To Device, Clear Capture.
The states are already filled in when the Media uploaded event runs, so there is nothing to wait for and nothing to schedule.

────────────────────────────────
📌 GOOD TO KNOW
────────────────────────────────

✅ For Bubble native mobile apps. It also runs in Bubble's web preview for design work.
✅ Nothing to install: it uses the camera the mobile runtime already ships.
✅ You add your app's file upload address once, and everything else is workflows.


📄 Documentation: https://wide-finch-c12.notion.site/Camera-Capture-Documentation-85461f4cca3a826cb8be01b7b3525474
Questions or something you need it to do? Get in touch — info@technocode.agency

$30

One time  •  Or  $3/mo

stars   •   0 ratings
0 installs  
This plugin does not collect or track your personal data.

Platform

Native mobile

Contributor details

Technocode logo
Technocode
Joined 2020   •   18 Plugins
View contributor profile

Instructions

📸 Camera Capture — setup in 5 steps
1. Ask for the camera
In your app's mobile settings, write why you need the camera, for example "This app uses the camera to take photos and videos." If you record video with sound, add the microphone one too. Without this, iPhone closes the app when the camera opens.

2. Drop the element on a page
Drag Camera Capture onto a mobile page and give it a height, around 400.

3. Tell it where to save
In upload_endpoint, paste your app's upload address:
https://YOURAPP.bubbleapps.io/version-test/fileupload
Remove /version-test when your app is live. This is required on phones.

4. Choose what it takes
capture_mode: Photo, Video, or both. For profile pictures, set frame_guide to Circle.

5. Save it to your database
Make a workflow: When Camera Capture's media uploaded → Make changes to a thing → put Camera Capture's photo in an image field, or Camera Capture's file in a file field.

That's it. Take a photo, tap Use, and it's in your database.

────────────────────────────────
💡 TIPS
────────────────────────────────

  • Want the camera over the whole screen? Put the Open Camera action on a button. It closes on its own once the shot is kept.
  • Leave auto_start off so the camera only opens when someone taps.
  • Keep video_quality on Medium: about 20 MB per minute.
  • Using your own buttons? Turn show_controls off and use Take Photo, Start Recording and Stop Recording.
  • After saving a form, run Clear Capture to empty the states.
  • Something not working? Turn on debug_overlay and read Last error.
  • One camera per screen. Actions talk to the last one you placed.
  • Test on a real phone with BubbleGo. The web preview uses your laptop camera and is only for design.

Types

This plugin can be found under the following types:
Element   •   Event   •   Action

Categories

This plugin can be found under the following categories:
Productivity   •   Video   •   Media   •   Image   •   Visual Elements

Resources

Support contact
Documentation
Tutorial

Rating and reviews

No reviews yet

This plugin has not received any reviews.
Bubble