soconnor
f0b1a7355e
Improve dashboard sidebar layout
2026-08-18 00:44:48 -04:00
soconnor
57a985bcd5
chore: bump iOS build to 29
2026-08-17 22:54:18 -04:00
soconnor
7be4bb2abe
feat: add business brand assets and health checks
2026-08-17 20:33:04 -04:00
soconnor
5c9fbe6dc2
Fix worker domain dependency
2026-08-17 18:44:11 -04:00
soconnor
70c08054fb
Make scheduling and dates timezone-safe
2026-08-17 18:15:39 -04:00
soconnor
1853eaa963
Add Mailpit email transport
2026-08-17 16:35:14 -04:00
soconnor
67ab6b78bd
Add scheduled invoice delivery
2026-08-17 13:54:45 -04:00
soconnor
29589c1f32
Render signup policy dynamically
2026-08-17 01:55:41 -04:00
soconnor
dafa62b9bb
Make Coolify service ports configurable
2026-08-17 01:14:39 -04:00
soconnor
24a1307a96
Add PostgreSQL-backed background worker
2026-08-17 01:02:44 -04:00
soconnor
9929d7321d
Polish mobile and web experience
2026-08-17 00:18:55 -04:00
soconnor
6c74436092
Convert Beenvoice to a Turborepo monorepo
2026-08-16 22:13:42 -04:00
soconnor
d057ba208d
Add 'apps/mobile/' from commit '5fa30f365f21531094cd4d2045042bb4f1370ac3'
...
git-subtree-dir: apps/mobile
git-subtree-mainline: 86f8987dff
git-subtree-split: 5fa30f365f
2026-08-16 21:42:59 -04:00
soconnor
86f8987dff
Add 'apps/web/' from commit '1e7174fa604b11e7c3983cd8ad01c596f6e77e96'
...
git-subtree-dir: apps/web
git-subtree-mainline: 068a51b46b
git-subtree-split: 1e7174fa60
2026-08-16 21:42:59 -04:00
soconnor
068a51b46b
Initialize Beenvoice workspace
2026-08-16 21:42:57 -04:00
soconnor
5fa30f365f
Make iOS release signing deterministic
2026-08-15 14:18:09 -04:00
soconnor
b9c7fb325a
Add in-app account deletion
2026-08-15 13:46:47 -04:00
soconnor
1e7174fa60
Add permanent account deletion
2026-08-15 13:46:42 -04:00
soconnor
9eadb0d7fb
Document public App Store demo login
2026-08-15 00:17:57 -04:00
soconnor
5f6987b84b
Restore public demo review password
2026-08-15 00:17:57 -04:00
soconnor
fa42ffb767
Add App Store review screenshots
2026-08-14 19:48:21 -04:00
soconnor
d2fa050c05
Bump iOS build to 27
2026-08-14 18:51:49 -04:00
soconnor
66a53f25f2
Harden demo access and restore clean checks
2026-08-14 16:45:02 -04:00
soconnor
f493fd20f2
Upgrade to Expo 57 and add parity smoke tests
2026-08-14 16:45:02 -04:00
soconnor
29d7b498ae
Add business logo branding support
2026-08-14 16:26:43 -04:00
soconnor
31ae51cf9e
Add offline caching and refine Live Activity
2026-08-14 16:26:43 -04:00
soconnor and Claude Opus 4.8
3f3b1362a9
Fix clock-in failing when no client is selected
...
clockIn and create used `input.clientId?.trim() ?? null`, but clients
always send `""` (not undefined) for no-client. `??` doesn't catch the
empty string, so `""` was inserted into time_entries.client_id,
violating the foreign key to clients.id. Use `|| null` to normalize a
blank string to null, matching updateRunning.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-08 15:43:21 -04:00
soconnor
fa3b9bf6a0
update app.json
2026-07-06 21:12:22 -04:00
soconnor
ae7350dae6
Prevent swipe rows from opening items
2026-07-02 00:52:50 -04:00
soconnor
40624f6e6f
Document recurring invoice scheduler setup
2026-07-02 00:49:48 -04:00
soconnor and Claude Sonnet 5
d589b94580
Make CRON_SECRET optional; fix docker env validation failure
...
CRON_SECRET was required (min 32 chars) in production by env.js, but
neither docker-compose.yml nor docker-compose.coolify.yml passed it
through. Since the release container isn't covered by
SKIP_ENV_VALIDATION (build-stage only), bun run start failed env
validation on every docker deploy unless CRON_SECRET was manually
configured — even though it only gates the optional recurring-invoice
cron endpoint, which already handles being unset gracefully.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-01 14:43:20 -04:00
soconnor
da219b287e
Support mobile home and live activity data
2026-07-01 02:55:16 -04:00
soconnor
530d0dc34d
Refresh home and more navigation
2026-07-01 02:46:39 -04:00
soconnor
6497ee4dec
Wire live activity widget patches
2026-07-01 02:45:30 -04:00
soconnor
107b593002
Center live activity timer layout
2026-07-01 02:37:58 -04:00
soconnor
316edb4b3e
Prefer mobile auth cookie for app requests
2026-06-29 22:01:41 -04:00
soconnor
b7eef743bd
Fix mobile account session selection
2026-06-29 22:01:41 -04:00
soconnor
9498a09b5b
Bump iOS build number
2026-06-29 18:40:11 -04:00
soconnor
0aa1b0b431
Send Better Auth session token with tRPC
2026-06-29 18:38:47 -04:00
soconnor
8866335c50
Accept mobile Better Auth session token header
2026-06-29 18:38:35 -04:00
soconnor
57e1aa658a
Stabilize mobile auth session handling
2026-06-29 17:58:50 -04:00
soconnor
fb731885de
Support chunked Better Auth session cookies
2026-06-29 17:57:38 -04:00
soconnor
1605322bc9
Improve expense dialog button layout
2026-06-29 15:30:19 -04:00
soconnor
ef826dffa9
Harden auth and mobile session handling
2026-06-29 15:21:31 -04:00
soconnor
477459edd4
Fix iOS Podfile generation for receipt OCR
2026-06-29 01:44:12 -04:00
soconnor
21268ddd39
Refine receipt item expense selection
2026-06-29 01:38:00 -04:00
soconnor
7bc8559b44
Expose mobile More tools
2026-06-29 01:38:00 -04:00
soconnor
8ad4210908
Add mobile expenses and receipt OCR
2026-06-29 01:35:00 -04:00
soconnor
d0c916d659
Polish expenses dashboard
2026-06-29 01:30:20 -04:00
soconnor
a66d05f24f
Remove default access and secret keys for S3 in Docker Compose files for security enhancement
2026-06-29 01:15:05 -04:00