Capacitor: UI software for mobile

,

Moez

Look at the TAG for this post it includes ui and task, you can search for your posts in the search engine on top of the homepage and look for tags as well.

Your first task:

  1. Review this document
  1. Install Capacitor on your machine: https://capacitorjs.com/
  2. Look for an existing camera application either in Vue.js or (any other) and make sure it has the latest versions of Camera libraries
  3. Then use Capacitor to build an iOS or Android app for that camera code

While I help you in this study, your deadline is July 15 2026.

Dara

Once you create a sample camera app, then your ML training for applications for imaging will start.

D

Hi, Thank you for the detailed brief, i have reviewed the makerstack document. I am starting the setup now beginning with the capacitor installation, i will keep all communications and progress updates centralized on this post.

Moez

I am very tired , might go to bed a bit earlier. Anyway expect me around noon to 1pm Dublin time.

I will program the apps with you so you are not alone and handle all the issues and bugs.

This training is hands-on 100%. Basically you will become a US professionally trained software developer.

The math and related analytical training e.g. vectors are a must. We will discuss later

Sounds good, looking forward to it, ill be online at that time

Hi

I’ve set up everything as planned, and i found the Ionic/Vue photo gallery app on GitHub : GitHub - ionic-team/tutorial-photo-gallery-vue: Photo Gallery Tutorial: Ionic Vue and Capacitor · GitHub

Does this look like a good application for the project ?

looks good, make sure it uses the Camera app. Also try to find projects which are 2 years old, this one is up to 6 years which is our current issue with our software. 2 years for the core packages should be the max age.

I will explain when I return

Hi Dara,

For step 3, I found 3 Vue.js/React camera projects (all updated within the last 2 years):

  1. vue-camera-lib (Vue 3) – last release Feb 2026 – GitHub - AlexKratky/vue-camera-lib: Simple library for Vue.js 3. Display the camera's output or take a photo from the mobile camera/webcam. · GitHub
  2. vue-camera-kit (Vue 3) – published March 2025, supports photo + video capture, camera switching, retake – GitHub - parsajiravand/vue-camera-kit: A versatile Vue 3 camera component for capturing photos and videos with advanced features · GitHub
  3. react-web-camera (React) – released Aug 2025, multi-photo capture, PWA-ready – GitHub - shivantra/react-web-camera: React Web Camera — A React component for capturing multiple photos directly from the browser. Works on web, responsive apps, and PWAs. Solving the limitation of <input type="file" capture> which only allows one photo at a time. · GitHub

Let me know which one you’d like me to move forward with

Before I review, I am not well versed in React, so let us see if we can use these projects with no Reacts expertise.

We can focus on Vue.js for the beginning, React comes later.

See if you can BUILD these projects, IF YES then I give you your own GIT account, IF NO discuss with me please

Good work

Got it, let’s focus 100% on Vue.js then.

I will try my best to build vue-camera-lib and vue-camera-kit right away to see if they compile successfully.

I’ll keep you updated on how the builds go!

  1. smaller the better app
  2. focus on camera if possible QR code
  3. focus on PERMISSIONS for camera
  4. focus on the dates of the libraries

You are free to make all other decisions

Hi Dara,

Here’s an update on where I am with the camera app.

What I’ve done so far:

  1. Library choice
    I focused on Vue.js as agreed, and picked “vue-camera-kit”. It was published in March 2025, so it’s recent. I checked its package.json file and it only lists Vue as a required dependency, no third-party camera library at all, so there’s nothing there that could become outdated. It’s also a very small, simple component (only two exported elements), which fits the “smaller is better” direction.

  2. Setup

  • Created a fresh Vue 3 project using Vite’s official project generator (npm create vite@latest, selecting the “vue” template), which automatically creates the base project files (package.json, src folder, entry files, etc.) instead of writing them by hand
  • Installed vue-camera-kit and its required dependency (@vueuse/core) via npm
  1. Getting it to actually work
    It didn’t work right away. The documentation’s example (README) showed importing the component as import Camera from ‘vue-camera-kit’ (a default import), but this threw a “component is missing template or render function” error in the browser console. I opened the library’s compiled file in node_modules and looked at its export line, which showed the component was under a named export called Camera, while the default export was something else. Fixing the import to import { Camera } from ‘vue-camera-kit’ (with curly braces) solved it.

  2. What’s confirmed working

  • The browser asks for camera permission correctly on first load
  • The live camera feed shows up correctly on screen
  • Taking a photo works, and I can display the captured photo right after taking it

Where I’m at: I have a working Vue app where the camera opens, asks for permission, and captures photos.

Let me know your thoughts, and how you’d like me to proceed from here.

On the right track Sir. Organize a process for us to install and test and review the code with you.

D

Thanks! Since the build worked could you set me up with my Git account? Once I have access I’ll push the project there and get it organized so we can review the code together whenever works for you. In the meantime, I’m starting to look into how to move forward with Capacitor.

git account is ready but you need to have proper projects to upload, this week we complete all those projects in order to upload to the git. More details soon

@Moez44 you can start on your Capacitor move with what you have , while I organize the server and the git.

Start with the smallest project you have then I call you in a few hours.

I will be in touch.

Dara

Understood

We will help you all along.

Hi Dara,

Update: I applied Capacitor to it for Android, same as Keypad Tiny.

What I did:

  • Installed Capacitor (core + CLI) in the SFX project.
  • Ran npx cap init : app name “SFX”, package ID : com.ccndev.sfx.
  • Built the Vue project and added the Android platform.
  • Opened it in Android Studio and ran it on the Pixel 8 emulator.

Result: the app builds and opens fine on the emulator, separate from Keypad Tiny (no conflict, different package ID). I went through the main screens (login, camera, QR scan, asset pages) and it looks and works the same as in the browser.

PS: the video will be added to the drive

Next steps:

  • Test on a real Android phone (not just the emulator).
  • Check Logcat more carefully for any hidden errors, especially camera permission and the fetch calls to Wolfram Cloud from the app.