MARKETPLACE
PLUGINS
CAMERA CAPTURE (MOBILE)
Camera Capture (Mobile) logo

Camera Capture (Mobile)

Published June 2026
   •    Updated this month

Plugin details

Production-ready native camera capture for Bubble mobile apps. Capture with a live in-app camera or the device camera, pick from the gallery, use single or multiple mode, control facing/flash/quality/format/resize, show alignment guides and a rule-of-thirds grid, save to the device gallery, share images, and drive workflows with detailed states, events, and actions. Native mobile only; test on BubbleGo and device builds.

Free

For everyone

3.3 stars   •   3 ratings
48 installs  
This plugin does not collect or track your personal data.

Other actions

Platform

Native mobile

Contributor details

ANKHARA Studios logo
ANKHARA Studios
Joined 2022   •   14 Plugins
View contributor profile

Instructions

Camera Capture (Mobile)
A production-ready native camera element for Bubble mobile apps. It supports a live custom camera, the device camera app, gallery picking, single and multiple capture, hosted Bubble uploads, save-to-gallery, sharing, alignment guides, collection management, and workflow states/events/actions.

SUPPORT & EXPRESS RESPONSES
For faster support, issue reports, or direct feedback, contact the developer here:
LinkedIn: https://www.linkedin.com/in/ndimdonald/
X (Twitter): https://x.com/donald_ndim

REQUIREMENTS
This plugin runs only in Bubble's native mobile environment. Test device-specific behavior in BubbleGo and in your iOS/Android build pipeline.

QUICK START
1. Add Camera Capture to a mobile page and give it a visible width and height.
2. Choose Capture source = custom for the live in-app camera, or native when your workflow will use Open native camera.
3. Use Take picture for the custom source. Use Open native camera for the device camera app.
4. Use Pick from gallery to accept existing images. The in-element Gallery button is optional and appears on the custom camera when enabled.
5. In single mode, use Captured image. In multiple mode, use Captured images and Multiple photo count. The list/count states are intentionally empty/0 in single mode.
6. A local image result is available immediately after native/gallery acceptance and hosted upload can finish afterward. Last file URL updates to the hosted URL when upload succeeds.
7. Save to gallery saves the current image in single mode or every held image in multiple mode. Share last opens the native share sheet for the latest local image.
8. Use Remove photo with Photo URL when possible. Its numeric index is zero-based; Bubble repeating-group indexes are commonly one-based, so subtract 1 when needed. Use Move photo and Clear all photos to manage a multiple-mode collection.
9. Set capture mode / Set capture source actions fire their change events. Dynamic property changes update the corresponding Current states without firing those action-specific events.
10. Guide fit is an interactive/manual indicator controlled by tap, hold, or workflow actions. It is not automatic subject detection.

IMPORTANT STATES
Captured image: current image in single mode; empty in multiple mode.
Captured images (multiple mode): ordered collection in multiple mode; empty in single mode.
Multiple photo count: collection size in multiple mode; 0 in single mode.
Last file URL: local URI first, then hosted Bubble URL after a successful upload.
Last file type: image for camera capture, gallery for gallery pick.
Camera permission status / Media permission status: granted, denied, or undetermined.
Camera ready?: readiness for the active camera path.
Is the element busy?: active foreground media operation.
Save status: empty, saving, saved, or error.
Last error: most recent operational error message.
Current capture source / In multiple capture mode?: active runtime source/mode.
Guide fit: current neutral/good-fit state.

ERRORS AND UPLOADS
Hosted upload failure does not discard an already accepted local image. Last error reports Upload failed: ... and When an error occurs fires. Permission outcomes also have dedicated permission states/events.

NATIVE MOBILE NOTES
Device camera behavior can vary by iOS/Android and the installed native camera app. Always test camera permissions, media permissions, background/foreground return, orientation, and gallery/save/share behavior on the platforms you ship.

SUPPORT & EXPRESS RESPONSES
For faster support, issue reports, or direct feedback, contact the developer here:
LinkedIn: https://www.linkedin.com/in/ndimdonald/
X (Twitter): https://x.com/donald_ndim

Types

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

Categories

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

Resources

Support contact
Tutorial

Rating and reviews

Average rating (3.3)

Would like more camera controls
September 12th, 2026
Very useful already especially saving to my phone, plus sharing image to socials like WhatsApp. If future versions add zoom and maybe cropping, I honestly wouldn’t need another photo plugin.
Multi photo mode is useful
September 11th, 2026
I’m using the fast multiple capture for items inspections and it fits the workflow nicely. Love how rapid it is compared to native process plus reordering photos.
Promising Plugin, but Android Image Upload Is Currently Broken
September 6th, 2026
The plugin is very promising and the front camera works correctly on Android using BubbleGo. The live camera preview also works as expected, which makes it a good fit for facial recognition workflows. However, I found a critical issue during image capture. The photo is created locally, but the upload fails with the following error: Method readAsStringAsync imported from "expo-file-system" is deprecated. The error suggests migrating to the new FileSystem API or using expo-file-system/legacy. I also tried to use the Fork Plugin option to investigate and fix the issue, but Bubble returns a GitHub HTTP 401 – Bad credentials error. So, at the moment, the camera works but the captured image cannot be uploaded or returned correctly on Android. If this compatibility issue is fixed, the plugin could be very useful for native mobile projects.
Thanks for reporting this and for helping me identify the issue. I’ve now published *Camera Capture (Mobile) v1.3.0*, which includes Expo SDK 57 compatibility, a fix targeting the Android hosted image-upload issue, updated file/image/media handling, stronger upload safeguards, and additional reliability improvements. Please update to v1.3.0 and let me know how it works for you. For faster support, you can also reach me directly on LinkedIn or X: LinkedIn: https://www.linkedin.com/in/ndimdonald/ X: https://x.com/donald_ndim (plugin author)
September 10th, 2026
  •  
ANKHARA Studios
Bubble