Gathering detailed insights and metrics for @michaelwolz/camera-preview-lite
Gathering detailed insights and metrics for @michaelwolz/camera-preview-lite
Gathering detailed insights and metrics for @michaelwolz/camera-preview-lite
Gathering detailed insights and metrics for @michaelwolz/camera-preview-lite
Fork of the capacitor-community/camera-preview plugin focusing on high resolution photos without bloating up the code.
npm install @michaelwolz/camera-preview-lite
Typescript
Module System
Min. Node Version
Node Version
NPM Version
Java (53.83%)
Swift (25.82%)
TypeScript (12.97%)
SCSS (1.82%)
HTML (1.76%)
Ruby (1.48%)
JavaScript (1.42%)
Objective-C (0.89%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
MIT License
3 Stars
468 Commits
3 Forks
1 Watchers
3 Branches
1 Contributors
Updated on Jun 11, 2025
Latest Version
7.1.0
Package Id
@michaelwolz/camera-preview-lite@7.1.0
Unpacked Size
603.98 kB
Size
145.26 kB
File Count
116
NPM Version
10.2.4
Node Version
20.11.1
Published on
Apr 30, 2025
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
@michaelwolz/camera-preview-lite
CAPACITOR 7
Capacitor plugin that allows camera interaction from Javascript and HTML
(based on @capacitor-community/camera-preview which itself was based on cordova-plugin-camera-preview).
This fork focuses on the camera functionality of the plugin by enabling high resolution photo output and better focus handling for new iPhone models.
Version 7 of this plugin requires Capacitor 7.
Version 6 of this plugin requires Capacitor 6.
PR's are greatly appreciated.
yarn add @michaelwolz/camera-preview-lite
or
npm install @michaelwolz/camera-preview-lite
Then run
npx cap sync
Important camera-preview
3+ requires Gradle 7. If you are using Gradle 4, please use version 2 of this plugin.
Open android/app/src/main/AndroidManifest.xml
and above the closing </manifest>
tag add this line to request the CAMERA permission:
1<uses-permission android:name="android.permission.CAMERA" />
For more help consult the Capacitor docs.
This plugin will use the following project variables (defined in your app's variables.gradle
file):
androidxExifInterfaceVersion
: version of androidx.exifinterface:exifinterface
(default: 1.3.6
)You will need to add two permissions to Info.plist
. Follow the Capacitor docs and add permissions with the raw keys NSCameraUsageDescription
.
Add import { CameraPreview } from '@capacitor-community/camera-preview';
in the file where you want to use the plugin.
then in html add <div id="cameraPreview"></div>
and CameraPreview.start({ parent: "cameraPreview"});
will work.
Starts the camera preview instance.
Option | values | descriptions |
---|---|---|
position | front \ rear | Show front or rear camera when start the preview. Defaults to front |
width | number | The preview width in pixels, default window.screen.width (applicable to the android and ios platforms only) |
height | number | The preview height in pixels, default window.screen.height (applicable to the android and ios platforms only) |
x | number | The x origin, default 0 (applicable to the android and ios platforms only) |
y | number | The y origin, default 0 (applicable to the android and ios platforms only) |
toBack | boolean | Brings your html in front of your preview, default false (applicable to the android and ios platforms only) |
paddingBottom | number | The preview bottom padding in pixes. Useful to keep the appropriate preview sizes when orientation changes (applicable to the android and ios platforms only) |
rotateWhenOrientationChanged | boolean | Rotate preview when orientation changes (applicable to the ios platforms only; default value is true) |
storeToFile | boolean | Capture images to a file and return back the file path instead of returning base64 encoded data, default false. |
disableExifHeaderStripping | boolean | Disable automatic rotation of the image, and let the browser deal with it, default true (applicable to the android and ios platforms only) |
enableHighResolution | boolean | Defaults to false - iOS only - Activate high resolution image capture so that output images are from the highest resolution on the device (photo quality) |
lockAndroidOrientation | boolean | Locks device orientation when camera is showing, default false. (applicable to Android only) |
enableOpacity | boolean | Make the camera preview see-through. Ideal for augmented reality uses. Default false (applicable to Android and web only) |
enableZoom | boolean | Set if you can pinch to zoom. Default false (applicable to the android and ios platforms only) |
1import { CameraPreview, CameraPreviewOptions } from '@capacitor-community/camera-preview'; 2 3const cameraPreviewOptions: CameraPreviewOptions = { 4 position: 'rear', 5 height: 1920, 6 width: 1080 7}; 8CameraPreview.start(cameraPreviewOptions);
Remember to add the style below on your app's HTML or body element:
1ion-content { 2 --background: transparent; 3}
Take into account that this will make transparent all ion-content on application, if you want to show camera preview only in one page, just add a custom class to your ion-content and make it transparent:
1.my-custom-camera-preview-content { 2 --background: transparent; 3}
If the camera preview is not displaying after applying the above styles, apply transparent background color to the root div element of the parent component Ex: VueJS >> App.vue component
1<template> 2 <ion-app id="app"> 3 <ion-router-outlet /> 4 </ion-app> 5</template> 6 7<style> 8#app { 9 background-color: transparent !important; 10} 11<style>
1CameraPreview.stop();
javascript CameraPreview.flip()
Option | values | descriptions |
---|---|---|
quality | number | (optional) The picture quality, 0 - 100, default 85 |
width | number | (optional) The picture width, best fit respecting the aspect ratio of the device (Android only) |
height | number | (optional) The picture height, best fit the aspect ratio of the device (Android only) |
quality
defaults to 85
and specifies the quality/compression value: 0=max compression
, 100=max quality
.
1import { CameraPreviewPictureOptions } from '@capacitor-community/camera-preview'; 2 3const cameraPreviewPictureOptions: CameraPreviewPictureOptions = { 4 quality: 50 5}; 6 7const result = await CameraPreview.capture(cameraPreviewPictureOptions); 8const base64PictureData = result.value;
Option | values | descriptions |
---|---|---|
quality | number | (optional) The picture quality, 0 - 100, default 85 |
1import { CameraSampleOptions } from '@capacitor-community/camera-preview'; 2 3const cameraSampleOptions: CameraSampleOptions = { 4 quality: 50 5}; 6 7const result = await CameraPreview.captureSample(cameraSampleOptions); 8const base64PictureData = result.value;
[FLASH_MODE](#camera_Settings.FlashMode)
for possible values that can be returned
1import { CameraPreviewFlashMode } from '@capacitor-community/camera-preview'; 2 3const flashModes = await CameraPreview.getSupportedFlashModes(); 4const supportedFlashModes: CameraPreviewFlashMode[] = flashModes.result;
[FLASH_MODE](#camera_Settings.FlashMode)
for details about the possible values
for flashMode.
1const CameraPreviewFlashMode: CameraPreviewFlashMode = 'torch'; 2 3CameraPreview.setFlashMode(cameraPreviewFlashMode);
1const myCamera = CameraPreview.start({ enableOpacity: true }); 2myCamera.setOpacity({ opacity: 0.4 });
1const { value } = await CameraPreview.isCameraStarted();
Name | Type | Default | Note |
---|---|---|---|
OFF | string | off | |
ON | string | on | |
AUTO | string | auto | |
RED_EYE | string | red-eye | Android Only |
TORCH | string | torch |
No vulnerabilities found.
No security vulnerabilities found.