diff --git a/.gitignore b/.gitignore
index f631d65f..1af5e59d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -55,7 +55,23 @@ build_logs/
icons
*.log
-android/app/src/main/res/
+
+# Generated Android assets and resources (should be generated during build)
+android/app/src/main/assets/public/
+
+# Generated Android resources (icons, splash screens, etc.)
+android/app/src/main/res/drawable*/
+android/app/src/main/res/mipmap*/
+android/app/src/main/res/values/ic_launcher_background.xml
+
+# Keep these Android configuration files in version control:
+# - android/app/src/main/assets/capacitor.plugins.json
+# - android/app/src/main/res/values/strings.xml
+# - android/app/src/main/res/values/styles.xml
+# - android/app/src/main/res/layout/activity_main.xml
+# - android/app/src/main/res/xml/config.xml
+# - android/app/src/main/res/xml/file_paths.xml
+
sql-wasm.wasm
# Temporary and generated files
diff --git a/android/app/src/main/assets/public/cordova.js b/android/app/src/main/assets/public/cordova.js
deleted file mode 100644
index e69de29b..00000000
diff --git a/android/app/src/main/assets/public/cordova_plugins.js b/android/app/src/main/assets/public/cordova_plugins.js
deleted file mode 100644
index e69de29b..00000000
diff --git a/android/app/src/main/assets/public/favicon.ico b/android/app/src/main/assets/public/favicon.ico
deleted file mode 100644
index 7dd1c898..00000000
Binary files a/android/app/src/main/assets/public/favicon.ico and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/background/cert-frame-1.jpg b/android/app/src/main/assets/public/img/background/cert-frame-1.jpg
deleted file mode 100644
index 83532280..00000000
Binary files a/android/app/src/main/assets/public/img/background/cert-frame-1.jpg and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/background/cert-frame-2.jpg b/android/app/src/main/assets/public/img/background/cert-frame-2.jpg
deleted file mode 100644
index a901aff0..00000000
Binary files a/android/app/src/main/assets/public/img/background/cert-frame-2.jpg and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/android-chrome-192x192.png b/android/app/src/main/assets/public/img/icons/android-chrome-192x192.png
deleted file mode 100644
index d98e8be1..00000000
Binary files a/android/app/src/main/assets/public/img/icons/android-chrome-192x192.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/android-chrome-512x512.png b/android/app/src/main/assets/public/img/icons/android-chrome-512x512.png
deleted file mode 100644
index ec8cb09f..00000000
Binary files a/android/app/src/main/assets/public/img/icons/android-chrome-512x512.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/android-chrome-maskable-192x192.png b/android/app/src/main/assets/public/img/icons/android-chrome-maskable-192x192.png
deleted file mode 100644
index 172fd133..00000000
Binary files a/android/app/src/main/assets/public/img/icons/android-chrome-maskable-192x192.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/android-chrome-maskable-512x512.png b/android/app/src/main/assets/public/img/icons/android-chrome-maskable-512x512.png
deleted file mode 100644
index 3905770c..00000000
Binary files a/android/app/src/main/assets/public/img/icons/android-chrome-maskable-512x512.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon-120x120.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon-120x120.png
deleted file mode 100644
index ea61f7e7..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon-120x120.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon-152x152.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon-152x152.png
deleted file mode 100644
index e112d96a..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon-152x152.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon-180x180.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon-180x180.png
deleted file mode 100644
index 70a5fcfc..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon-180x180.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon-60x60.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon-60x60.png
deleted file mode 100644
index 7374d466..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon-60x60.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon-76x76.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon-76x76.png
deleted file mode 100644
index df5e54cc..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon-76x76.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/apple-touch-icon.png b/android/app/src/main/assets/public/img/icons/apple-touch-icon.png
deleted file mode 100644
index 70a5fcfc..00000000
Binary files a/android/app/src/main/assets/public/img/icons/apple-touch-icon.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/favicon-16x16.png b/android/app/src/main/assets/public/img/icons/favicon-16x16.png
deleted file mode 100644
index dbcf457b..00000000
Binary files a/android/app/src/main/assets/public/img/icons/favicon-16x16.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/favicon-32x32.png b/android/app/src/main/assets/public/img/icons/favicon-32x32.png
deleted file mode 100644
index 1aa11955..00000000
Binary files a/android/app/src/main/assets/public/img/icons/favicon-32x32.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/msapplication-icon-144x144.png b/android/app/src/main/assets/public/img/icons/msapplication-icon-144x144.png
deleted file mode 100644
index 443baa2c..00000000
Binary files a/android/app/src/main/assets/public/img/icons/msapplication-icon-144x144.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/mstile-150x150.png b/android/app/src/main/assets/public/img/icons/mstile-150x150.png
deleted file mode 100644
index c8ce73a3..00000000
Binary files a/android/app/src/main/assets/public/img/icons/mstile-150x150.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/img/icons/safari-pinned-tab-512x512.svg b/android/app/src/main/assets/public/img/icons/safari-pinned-tab-512x512.svg
deleted file mode 100644
index 90688cfb..00000000
--- a/android/app/src/main/assets/public/img/icons/safari-pinned-tab-512x512.svg
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
diff --git a/android/app/src/main/assets/public/img/icons/safari-pinned-tab.svg b/android/app/src/main/assets/public/img/icons/safari-pinned-tab.svg
deleted file mode 100644
index 15d95748..00000000
--- a/android/app/src/main/assets/public/img/icons/safari-pinned-tab.svg
+++ /dev/null
@@ -1,226 +0,0 @@
-
-
diff --git a/android/app/src/main/assets/public/img/textures/leafy-autumn-forest-floor.jpg b/android/app/src/main/assets/public/img/textures/leafy-autumn-forest-floor.jpg
deleted file mode 100644
index cadd5a65..00000000
Binary files a/android/app/src/main/assets/public/img/textures/leafy-autumn-forest-floor.jpg and /dev/null differ
diff --git a/android/app/src/main/assets/public/models/lupine_plant/license.txt b/android/app/src/main/assets/public/models/lupine_plant/license.txt
deleted file mode 100644
index 9a6980cc..00000000
--- a/android/app/src/main/assets/public/models/lupine_plant/license.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-Model Information:
-* title: Lupine Plant
-* source: https://sketchfab.com/3d-models/lupine-plant-bf30f1110c174d4baedda0ed63778439
-* author: rufusrockwell (https://sketchfab.com/rufusrockwell)
-
-Model License:
-* license type: CC-BY-4.0 (http://creativecommons.org/licenses/by/4.0/)
-* requirements: Author must be credited. Commercial use is allowed.
-
-If you use this 3D model in your project be sure to copy paste this credit wherever you share it:
-This work is based on "Lupine Plant" (https://sketchfab.com/3d-models/lupine-plant-bf30f1110c174d4baedda0ed63778439) by rufusrockwell (https://sketchfab.com/rufusrockwell) licensed under CC-BY-4.0 (http://creativecommons.org/licenses/by/4.0/)
\ No newline at end of file
diff --git a/android/app/src/main/assets/public/models/lupine_plant/scene.bin b/android/app/src/main/assets/public/models/lupine_plant/scene.bin
deleted file mode 100644
index e523e7dd..00000000
Binary files a/android/app/src/main/assets/public/models/lupine_plant/scene.bin and /dev/null differ
diff --git a/android/app/src/main/assets/public/models/lupine_plant/scene.gltf b/android/app/src/main/assets/public/models/lupine_plant/scene.gltf
deleted file mode 100644
index 0ec19971..00000000
--- a/android/app/src/main/assets/public/models/lupine_plant/scene.gltf
+++ /dev/null
@@ -1,229 +0,0 @@
-{
- "accessors": [
- {
- "bufferView": 2,
- "componentType": 5126,
- "count": 2759,
- "max": [
- 41.3074951171875,
- 40.37548828125,
- 87.85917663574219
- ],
- "min": [
- -35.245540618896484,
- -36.895416259765625,
- -0.9094290137290955
- ],
- "type": "VEC3"
- },
- {
- "bufferView": 2,
- "byteOffset": 33108,
- "componentType": 5126,
- "count": 2759,
- "max": [
- 0.9999382495880127,
- 0.9986748695373535,
- 0.9985831379890442
- ],
- "min": [
- -0.9998949766159058,
- -0.9975876212120056,
- -0.411094069480896
- ],
- "type": "VEC3"
- },
- {
- "bufferView": 3,
- "componentType": 5126,
- "count": 2759,
- "max": [
- 0.9987699389457703,
- 0.9998998045921326,
- 0.9577858448028564,
- 1.0
- ],
- "min": [
- -0.9987726807594299,
- -0.9990445971488953,
- -0.999801516532898,
- 1.0
- ],
- "type": "VEC4"
- },
- {
- "bufferView": 1,
- "componentType": 5126,
- "count": 2759,
- "max": [
- 1.0061479806900024,
- 0.9993550181388855
- ],
- "min": [
- 0.00279300007969141,
- 0.0011620000004768372
- ],
- "type": "VEC2"
- },
- {
- "bufferView": 0,
- "componentType": 5125,
- "count": 6378,
- "type": "SCALAR"
- }
- ],
- "asset": {
- "extras": {
- "author": "rufusrockwell (https://sketchfab.com/rufusrockwell)",
- "license": "CC-BY-4.0 (http://creativecommons.org/licenses/by/4.0/)",
- "source": "https://sketchfab.com/3d-models/lupine-plant-bf30f1110c174d4baedda0ed63778439",
- "title": "Lupine Plant"
- },
- "generator": "Sketchfab-12.68.0",
- "version": "2.0"
- },
- "bufferViews": [
- {
- "buffer": 0,
- "byteLength": 25512,
- "name": "floatBufferViews",
- "target": 34963
- },
- {
- "buffer": 0,
- "byteLength": 22072,
- "byteOffset": 25512,
- "byteStride": 8,
- "name": "floatBufferViews",
- "target": 34962
- },
- {
- "buffer": 0,
- "byteLength": 66216,
- "byteOffset": 47584,
- "byteStride": 12,
- "name": "floatBufferViews",
- "target": 34962
- },
- {
- "buffer": 0,
- "byteLength": 44144,
- "byteOffset": 113800,
- "byteStride": 16,
- "name": "floatBufferViews",
- "target": 34962
- }
- ],
- "buffers": [
- {
- "byteLength": 157944,
- "uri": "scene.bin"
- }
- ],
- "images": [
- {
- "uri": "textures/lambert2SG_baseColor.png"
- },
- {
- "uri": "textures/lambert2SG_normal.png"
- }
- ],
- "materials": [
- {
- "alphaCutoff": 0.2,
- "alphaMode": "MASK",
- "doubleSided": true,
- "name": "lambert2SG",
- "normalTexture": {
- "index": 1
- },
- "pbrMetallicRoughness": {
- "baseColorTexture": {
- "index": 0
- },
- "metallicFactor": 0.0
- }
- }
- ],
- "meshes": [
- {
- "name": "Object_0",
- "primitives": [
- {
- "attributes": {
- "NORMAL": 1,
- "POSITION": 0,
- "TANGENT": 2,
- "TEXCOORD_0": 3
- },
- "indices": 4,
- "material": 0,
- "mode": 4
- }
- ]
- }
- ],
- "nodes": [
- {
- "children": [
- 1
- ],
- "matrix": [
- 1.0,
- 0.0,
- 0.0,
- 0.0,
- 0.0,
- 2.220446049250313e-16,
- -1.0,
- 0.0,
- 0.0,
- 1.0,
- 2.220446049250313e-16,
- 0.0,
- 0.0,
- 0.0,
- 0.0,
- 1.0
- ],
- "name": "Sketchfab_model"
- },
- {
- "children": [
- 2
- ],
- "name": "LupineSF.obj.cleaner.materialmerger.gles"
- },
- {
- "mesh": 0,
- "name": "Object_2"
- }
- ],
- "samplers": [
- {
- "magFilter": 9729,
- "minFilter": 9987,
- "wrapS": 10497,
- "wrapT": 10497
- }
- ],
- "scene": 0,
- "scenes": [
- {
- "name": "Sketchfab_Scene",
- "nodes": [
- 0
- ]
- }
- ],
- "textures": [
- {
- "sampler": 0,
- "source": 0
- },
- {
- "sampler": 0,
- "source": 1
- }
- ]
-}
diff --git a/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_baseColor.png b/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_baseColor.png
deleted file mode 100644
index 211290ef..00000000
Binary files a/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_baseColor.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_normal.png b/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_normal.png
deleted file mode 100644
index a4e6ffed..00000000
Binary files a/android/app/src/main/assets/public/models/lupine_plant/textures/lambert2SG_normal.png and /dev/null differ
diff --git a/android/app/src/main/assets/public/robots.txt b/android/app/src/main/assets/public/robots.txt
deleted file mode 100644
index eb053628..00000000
--- a/android/app/src/main/assets/public/robots.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-User-agent: *
-Disallow:
diff --git a/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
deleted file mode 100644
index c7bd21db..00000000
--- a/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/android/app/src/main/res/drawable/ic_launcher_background.xml b/android/app/src/main/res/drawable/ic_launcher_background.xml
deleted file mode 100644
index d5fccc53..00000000
--- a/android/app/src/main/res/drawable/ic_launcher_background.xml
+++ /dev/null
@@ -1,170 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
deleted file mode 100644
index 0aa82aa1..00000000
--- a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
deleted file mode 100644
index 0aa82aa1..00000000
--- a/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/android/app/src/main/res/values/ic_launcher_background.xml b/android/app/src/main/res/values/ic_launcher_background.xml
deleted file mode 100644
index c5d5899f..00000000
--- a/android/app/src/main/res/values/ic_launcher_background.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
- #FFFFFF
-
\ No newline at end of file
diff --git a/capacitor-assets.config.json b/capacitor-assets.config.json
new file mode 100644
index 00000000..d56533f4
--- /dev/null
+++ b/capacitor-assets.config.json
@@ -0,0 +1,36 @@
+{
+ "icon": {
+ "ios": {
+ "source": "resources/ios/icon/icon.png",
+ "target": "ios/App/App/Assets.xcassets/AppIcon.appiconset"
+ },
+ "android": {
+ "source": "resources/android/icon/icon.png",
+ "target": "android/app/src/main/res"
+ },
+ "web": {
+ "source": "resources/web/icon/icon.png",
+ "target": "public/img/icons"
+ }
+ },
+ "splash": {
+ "ios": {
+ "source": "resources/ios/splash/splash.png",
+ "target": "ios/App/App/Assets.xcassets/Splash.imageset"
+ },
+ "android": {
+ "source": "resources/android/splash/splash.png",
+ "target": "android/app/src/main/res"
+ }
+ },
+ "splashDark": {
+ "ios": {
+ "source": "resources/ios/splash/splash_dark.png",
+ "target": "ios/App/App/Assets.xcassets/SplashDark.imageset"
+ },
+ "android": {
+ "source": "resources/android/splash/splash_dark.png",
+ "target": "android/app/src/main/res"
+ }
+ }
+}
\ No newline at end of file
diff --git a/resources/README.md b/resources/README.md
new file mode 100644
index 00000000..a3b9f803
--- /dev/null
+++ b/resources/README.md
@@ -0,0 +1,79 @@
+# TimeSafari Resources Directory
+
+This directory contains source assets for the TimeSafari application across all platforms.
+
+## Directory Structure
+
+```
+resources/
+├── android/
+│ ├── icon/
+│ │ └── icon.png
+│ └── splash/
+│ ├── splash.png
+│ └── splash_dark.png
+├── ios/
+│ ├── icon/
+│ │ └── icon.png
+│ └── splash/
+│ ├── splash.png
+│ └── splash_dark.png
+└── web/
+ ├── icon/
+ │ └── icon.png
+ └── images/
+```
+
+## Asset Requirements
+
+### Icon Requirements
+- **Format**: PNG
+- **Size**: 1024x1024 pixels minimum
+- **Background**: Transparent or solid color
+- **Content**: App logo/icon
+
+### Splash Screen Requirements
+- **Format**: PNG
+- **Size**: 1242x2688 pixels (iPhone 11 Pro Max size)
+- **Background**: Solid color or gradient
+- **Content**: App logo centered
+
+## Asset Generation
+
+Assets are automatically generated during the build process using `capacitor-assets`:
+
+```bash
+# Generate assets for all platforms
+npx capacitor-assets generate
+
+# Generate assets for specific platform
+npx capacitor-assets generate --ios
+npx capacitor-assets generate --android
+npx capacitor-assets generate --web
+```
+
+## Configuration
+
+Asset generation is configured in `capacitor-assets.config.json` at the project root.
+
+## Version Control
+
+- **Source assets** (this directory): ✅ In version control
+- **Generated assets**: ❌ Not in version control (excluded by `.gitignore`)
+
+## Updating Assets
+
+1. Replace the source asset files in the appropriate platform directory
+2. Run the build process to regenerate platform-specific assets
+3. Test the generated assets on target platforms
+
+## Build Integration
+
+Assets are automatically generated as part of the build process:
+- `npm run build:android` - Generates Android assets
+- `npm run build:ios` - Generates iOS assets
+- `npm run build:web` - Generates web assets
+
+**Author**: Matthew Raymer
+**Date**: 2025-01-27
+**Status**: ✅ **ACTIVE** - Asset management system implemented
\ No newline at end of file
diff --git a/resources/android/icon/icon.png b/resources/android/icon/icon.png
new file mode 100644
index 00000000..f7b4d9d2
Binary files /dev/null and b/resources/android/icon/icon.png differ
diff --git a/resources/android/splash/splash.png b/resources/android/splash/splash.png
new file mode 100644
index 00000000..5a29ffdd
Binary files /dev/null and b/resources/android/splash/splash.png differ
diff --git a/resources/android/splash/splash_dark.png b/resources/android/splash/splash_dark.png
new file mode 100644
index 00000000..d5d24209
Binary files /dev/null and b/resources/android/splash/splash_dark.png differ
diff --git a/resources/ios/icon/icon.png b/resources/ios/icon/icon.png
new file mode 100644
index 00000000..f7b4d9d2
Binary files /dev/null and b/resources/ios/icon/icon.png differ
diff --git a/resources/ios/splash/splash.png b/resources/ios/splash/splash.png
new file mode 100644
index 00000000..5a29ffdd
Binary files /dev/null and b/resources/ios/splash/splash.png differ
diff --git a/resources/ios/splash/splash_dark.png b/resources/ios/splash/splash_dark.png
new file mode 100644
index 00000000..d5d24209
Binary files /dev/null and b/resources/ios/splash/splash_dark.png differ
diff --git a/resources/web/icon/icon.png b/resources/web/icon/icon.png
new file mode 100644
index 00000000..f7b4d9d2
Binary files /dev/null and b/resources/web/icon/icon.png differ