Matthias Nott
2026-03-07 af1543135d42adc2e97dc5243aeef7418cd3b00d
refs
author Matthias Nott <mnott@mnsoft.org>
Saturday, March 7, 2026 08:39 +0100
committer Matthias Nott <mnott@mnsoft.org>
Saturday, March 7, 2026 08:39 +0100
commitaf1543135d42adc2e97dc5243aeef7418cd3b00d
tree 1c28da7c26ac4f10eeaea5f9bf17704c049d157d tree | zip | gz
parent 6a1bf115c16c56d8db462cde70f645e85e84df0f view | diff
feat: dual address auto-switch, custom icon, notifications, image support

- Add local/remote address with automatic failover (try local first, fall back to remote)
- Replace default Expo icon with custom PAILot teal airplane icon (all variants)
- Add local notification system (ObjC native module + ChatContext integration)
- Add Wake-on-LAN as fire-and-forget (never blocks connection)
- Add image send/receive with camera and photo library picker
- Add image caption modal (WhatsApp-style full-screen preview)
- Add session drawer, theme context, and dark/light mode cycling
- Add message persistence and per-session message storage
10 files added
25 files modified
changed files
Notes/PAI.md diff | view | blame | history
Notes/TODO.md diff | view | blame | history
app.json diff | view | blame | history
app/_layout.tsx diff | view | blame | history
app/chat.tsx diff | view | blame | history
app/navigate.tsx diff | view | blame | history
app/settings.tsx diff | view | blame | history
assets/android-icon-background.png diff | view | blame | history
assets/android-icon-foreground.png diff | view | blame | history
assets/android-icon-monochrome.png diff | view | blame | history
assets/favicon.png diff | view | blame | history
assets/icon.png diff | view | blame | history
assets/splash-icon.png diff | view | blame | history
bun.lock diff | view | blame | history
components/SessionDrawer.tsx diff | view | blame | history
components/SessionPicker.tsx diff | view | blame | history
components/chat/CommandBar.tsx diff | view | blame | history
components/chat/ImageCaptionModal.tsx diff | view | blame | history
components/chat/ImageViewer.tsx diff | view | blame | history
components/chat/InputBar.tsx diff | view | blame | history
components/chat/MessageBubble.tsx diff | view | blame | history
components/chat/VoiceButton.tsx diff | view | blame | history
components/ui/IconButton.tsx diff | view | blame | history
components/ui/StatusDot.tsx diff | view | blame | history
contexts/ChatContext.tsx diff | view | blame | history
contexts/ConnectionContext.tsx diff | view | blame | history
contexts/ThemeContext.tsx diff | view | blame | history
memory/MEMORY.md diff | view | blame | history
package-lock.json diff | view | blame | history
package.json diff | view | blame | history
services/audio.ts diff | view | blame | history
services/notifications.ts diff | view | blame | history
services/websocket.ts diff | view | blame | history
services/wol.ts diff | view | blame | history
types/index.ts diff | view | blame | history