calorie-ai-android/web/capacitor.config.ts
Daniel f14b433085
Some checks failed
Android CI / build (push) Successful in 1m33s
Web CI / test (push) Failing after 1m23s
Android Release / release-apk (push) Failing after 22s
Replace Kotlin app with Capacitor WebView wrapper
The native Kotlin/Compose app is replaced by a Capacitor shell that
loads the existing Svelte web app from the self-hosted server URL,
set via APP_SERVER_URL secret at build time.

- web/capacitor.config.ts: appId com.danvics.calorieai, reads
  APP_SERVER_URL env var so the WebView points at the live server
- web/android/: Capacitor-generated Android project (gradlew included)
- AndroidManifest.xml: added CAMERA, READ_MEDIA_IMAGES, READ_EXTERNAL_STORAGE
- MealForm.svelte: split file input into Camera (capture=environment)
  and Gallery buttons so both options are accessible natively
- release.yml: npm ci → npm run build → cap sync → gradlew assembleDebug;
  removed manual Gradle installation, uses bundled gradlew instead
- package.json: Capacitor packages as devDependencies (not shipped in
  the Docker server image)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-20 18:14:53 +02:00

20 lines
380 B
TypeScript

import { CapacitorConfig } from '@capacitor/cli';
const serverUrl = process.env.APP_SERVER_URL;
const config: CapacitorConfig = {
appId: 'com.danvics.calorieai',
appName: 'Calorie AI',
webDir: 'dist',
...(serverUrl ? {
server: {
url: serverUrl,
cleartext: true,
},
} : {}),
android: {
allowMixedContent: true,
},
};
export default config;