This website requires JavaScript.
480c50981d
Unify entities navigation, redesign time clock, and add invoice PDF preview.
master
soconnor
2026-06-23 01:08:23 -04:00
0b7ffac4e7
Add migration 0016 to fix missing sendReminderAt column.
soconnor
2026-06-22 16:22:11 -04:00
9b72afdf69
Fix sendReminderAt migration column name and register in journal.
soconnor
2026-06-22 16:16:46 -04:00
9e7177a869
fix: journal update
soconnor
2026-06-22 16:12:09 -04:00
1928084acb
Add draft-only invoicing rules, send reminders, and time clock billing.
soconnor
2026-06-22 16:06:11 -04:00
4cd8ad3c4c
Redesign legal pages with readable paragraph layout and updated contact info.
soconnor
2026-06-18 02:44:43 -04:00
5019a7597d
Expose public auth capabilities endpoint for mobile SSO detection.
soconnor
2026-06-18 02:27:31 -04:00
40020b78f8
fix: auth lock privacy
soconnor
2026-06-18 01:45:18 -04:00
69da2bf71d
Add shared legal pages and wire Privacy Policy and Terms across the app.
soconnor
2026-06-18 01:33:34 -04:00
b7380f4348
Add demo account seed migration for App Store review.
soconnor
2026-06-17 23:14:45 -04:00
5c28b33e9f
Unify time tracking on server-backed entries with updateRunning.
soconnor
2026-06-17 22:36:39 -04:00
81a0ce33a4
Add better-auth Expo plugin for mobile app authentication.
soconnor
2026-06-17 15:56:53 -04:00
190fbd433b
fix: sort chronologically
soconnor
2026-06-12 00:11:00 -04:00
94e0a18bf5
fix: missing publicTokenExpiresAt
soconnor
2026-06-11 12:19:13 -04:00
48d3335f12
fix: auth redir memoization
soconnor
2026-06-11 12:09:22 -04:00
1c24c90189
fix: build errors
soconnor
2026-06-11 12:01:19 -04:00
6b1173b4db
Switch from standalone to standard Next.js build
Claude
2026-06-11 15:50:38 +00:00
17971f2a98
Disable React Compiler to fix SSR prerender on Linux
Claude
2026-06-11 15:47:48 +00:00
7a6e255325
Merge pull request #2 from soconnor0919/claude/time-clock-invoice-g342lt
soconnor
2026-06-11 11:43:26 -04:00
b10cf5dd2e
Force dynamic rendering for all dashboard pages
Claude
2026-06-11 06:18:00 +00:00
a3d8120059
package updates
soconnor
2026-06-11 01:49:06 -04:00
9c135d3289
Fix ESLint type import and add better-auth to serverExternalPackages
Claude
2026-06-11 05:45:55 +00:00
e03c553b7f
Add temporary PDF preview links via public token TTL
Claude
2026-06-11 05:37:17 +00:00
c0a333710f
Complete MCP coverage: 58 tools, invoice filters, templates, email config, profile
Claude
2026-06-11 05:33:13 +00:00
c6b6641dfa
Expand MCP from 24 to 49 tools — full coverage of all major features
Claude
2026-06-11 05:30:16 +00:00
868c34f005
Expose invoiceId in MCP time_clock_in tool
Claude
2026-06-11 05:11:54 +00:00
feb8f36ce7
Integrate time clock directly into invoices, remove standalone page
Claude
2026-06-11 00:23:50 +00:00
0d8efb0c5f
chore: update dependencies (next, react, radix-ui, trpc, drizzle, etc.)
soconnor
2026-06-06 18:57:40 -04:00
9762ede7ec
feat: show live estimated hours/earnings while timer is running
soconnor
2026-06-06 18:54:05 -04:00
2b4608bfb4
feat: add missing MCP tools and fix undefined content response
soconnor
2026-06-06 18:46:30 -04:00
c490556a02
fix: copy static assets into standalone dir after next build
soconnor
2026-06-06 18:31:20 -04:00
839016532c
fix: move ssr:false dynamic imports into client component
soconnor
2026-06-06 18:26:42 -04:00
b1f0c98fdd
fix: use node standalone server instead of next start
soconnor
2026-06-06 18:24:59 -04:00
d2f39bfc35
refactor: replace custom migrate.ts with standard Drizzle migrator
soconnor
2026-06-06 18:12:01 -04:00
960f0c2d17
fix: add isMigrationApplied cases for migrations 0009–0012
soconnor
2026-06-06 18:07:35 -04:00
ef94b69e52
feat: show active timer on dashboard homepage with clock-out button
soconnor
2026-06-06 18:05:54 -04:00
540150be33
fix: use node standalone server instead of next start
soconnor
2026-06-06 18:00:32 -04:00
d9e2bab779
feat: time clock links to latest client invoice + fix SSO verification token overflow
soconnor
2026-06-06 17:55:26 -04:00
3c708b7914
time clock fixes
soconnor
2026-06-06 17:18:32 -04:00
b0e026c963
Fix ESLint errors: remove setState-in-effect, use nullish coalescing
Claude
2026-06-06 18:06:32 +00:00
bdc25e0c58
Document Drizzle migration journal requirement in AGENTS.md
Claude
2026-06-06 18:03:55 +00:00
cf7af6ae00
Add time_entries migration to Drizzle journal
Claude
2026-06-06 17:52:41 +00:00
29630ebc1f
Add time clock feature with MCP access
Claude
2026-06-06 17:05:17 +00:00
413eb3e3c0
Allow MCP API route through proxy
soconnor
2026-06-04 21:44:24 -04:00
bad24aeda4
Merge MCP API access
soconnor
2026-06-04 21:40:08 -04:00
37eb70be65
Add MCP API access
soconnor
2026-06-04 21:33:32 -04:00
a13992e387
fix: use custom migrate.ts instead of drizzle-kit migrate in Docker
soconnor
2026-05-10 21:59:46 -04:00
f4c2435ddc
fix: run db:migrate at container startup instead of build time
soconnor
2026-05-10 21:48:21 -04:00
898422571f
fix: remove hardcoded baseURL from auth client
soconnor
2026-05-10 21:41:05 -04:00
e3b2de5aa2
fix: replace invalid ADD CONSTRAINT IF NOT EXISTS with DO $$ BEGIN blocks
soconnor
2026-05-10 18:29:49 -04:00
c878a6ed69
chore: add isMigrationApplied check for migration 0008
soconnor
2026-05-10 18:17:38 -04:00
95b5ba5171
chore: add migration 0008 for payments, recurring invoices, and public links
soconnor
2026-05-10 18:13:35 -04:00
f0c34160df
feat: add recurring invoices, public links, time tracker, payments, reminders
soconnor
2026-05-10 17:17:58 -04:00
47a0ccc88c
fix: remove extra bottom padding from filter and pagination bars
soconnor
2026-05-10 03:10:37 -04:00
7819e438df
feat: add fuzzy autocomplete and NL quick-add for invoice line items
soconnor
2026-05-10 03:08:00 -04:00
0ba9c2f029
refactor: simplify register page to single centered card
soconnor
2026-05-10 02:35:33 -04:00
02a951817c
refactor: simplify signin page to single centered card
soconnor
2026-05-10 02:33:12 -04:00
3983724866
fix: restore authentik trusted origin and remove auth card U-border shadow
soconnor
2026-05-10 02:24:46 -04:00
0e46fdafb2
feat: add administration page and account role management
soconnor
2026-04-30 10:50:50 -04:00
ddc2b42672
Refactor invoice data table and templates page for improved readability and functionality
soconnor
2026-04-29 22:49:07 -04:00
dbb739b060
refactor: update SendEmailPage layout and remove SendEmailDialog component
soconnor
2026-04-28 01:30:38 -04:00
bd3181fb9d
feat: add PDF preview functionality and normalize email message handling
soconnor
2026-04-28 01:26:47 -04:00
915ec103fc
feat: add email message field to invoices and update related components
soconnor
2026-04-28 01:06:45 -04:00
4108019eab
feat: enhance PDF generation with improved line estimation and page budgeting
soconnor
2026-04-28 00:44:00 -04:00
84a5d997b4
refactor: remove InvoiceView component and update related email and invoice handling
soconnor
2026-04-28 00:34:56 -04:00
ad89ad001d
feat: update Dockerfile and docker-compose.yml to use WEB_PORT variable and streamline migration process
soconnor
2026-04-27 22:49:13 -04:00
4fd6772f2e
refactor: streamline Dockerfile and docker-compose.yml for improved build process
soconnor
2026-04-27 22:41:57 -04:00
fbeca7cfee
feat: remove start.sh script and add appearance preferences management
soconnor
2026-04-27 22:12:16 -04:00
b582b6c88e
update pdf generation to flow better
soconnor
2026-04-27 14:15:06 -04:00
00e066ca4e
fix: register frutiger-bold as pdf font
soconnor
2026-04-27 13:33:40 -04:00
4214a4b4de
add invoice prefixes, currency passing to pdf gen
soconnor
2026-04-10 01:28:14 -04:00
af392e1bc9
remove reordering controls, add auto sort
soconnor
2026-04-09 23:27:45 -04:00
74f9696023
Add tax features: summary report, deductible expenses, invoice tax fix, CSV export
Claude
2026-04-05 03:21:08 +00:00
1f76cf38a7
Fix migrate: remove bogus tracking entries from broken baseline
Claude
2026-04-05 03:11:43 +00:00
e5242b37a4
Fix baseline: only mark migrations applied if schema changes already exist
Claude
2026-04-05 03:08:34 +00:00
38206f34fe
Handle baseline migration for databases previously set up with db:push
Claude
2026-04-05 03:06:08 +00:00
e950abd805
Fix migration files excluded from Docker build and restore fonts
Claude
2026-04-05 03:03:45 +00:00
4c0eae4b11
Fix build: resolve Turbopack client bundle and font issues
Claude
2026-04-05 03:00:25 +00:00
e6b79ce2c2
Add bulk actions, multi-currency, expenses, templates, and reports
Claude
2026-04-05 02:34:06 +00:00
ba14526fc5
Set up proper DB migrations and fix remaining mobile responsive issues
Claude
2026-04-05 01:59:08 +00:00
563d77ba65
Update README and improve mobile responsiveness for invoicing UI
Claude
2026-04-05 01:53:15 +00:00
fb5ffc3195
upd: upgrade dependencies and improve invoice form layout
soconnor
2026-04-04 21:09:24 -04:00
1b6dfbb460
Fix invoice edit cache invalidation issue
soconnor
2026-01-14 13:21:49 -05:00
01f3b408e9
upd: change plugin for oidc
soconnor
2026-01-14 03:30:15 -05:00
ea9dc35323
db: push sso changes
soconnor
2026-01-14 03:24:30 -05:00
1cf3dc4d6f
feat: manual account linking
soconnor
2026-01-14 03:20:31 -05:00
0696e488e6
feat: add account linking
soconnor
2026-01-14 03:17:54 -05:00
0d5aae3f1b
fix: adding explicit JWKS URI to bypass discovery issues
soconnor
2026-01-14 03:14:55 -05:00
ee98bc6fcb
fix: redundancy for redirect
soconnor
2026-01-14 03:10:10 -05:00
9aa0179d2e
fix: change domain
soconnor
2026-01-14 03:05:27 -05:00
cba39f80dc
fix: testing
soconnor
2026-01-14 03:04:04 -05:00
c8ac5710cf
fix: add trusted origins
soconnor
2026-01-14 02:59:52 -05:00
b90eb6d426
fix: add issuer env
soconnor
2026-01-14 02:50:57 -05:00
07d1dd6fc3
fix: remove proxy
soconnor
2026-01-14 02:47:42 -05:00
d5f337df80
fix: hide mock in prod
soconnor
2026-01-14 02:36:27 -05:00
d4df1a5104
lib: update next
soconnor
2026-01-14 02:34:55 -05:00
302f3cb3f5
feat: add oidc support with authentik
soconnor
2026-01-14 02:33:20 -05:00
180f14dfb0
feat: improve invoice calendar item display and date picker icon button styling
soconnor
2025-12-14 22:02:04 -05:00
32cffa34fa
feat: Enhance DatePicker and NumberInput components, refactor invoice line item UI, sort invoice items by date, and remove Vercel configuration.
soconnor
2025-12-14 21:13:18 -05:00
ed0dacb435
feat: Implement a new CountUp component and refactor calendar day details to use a Sheet instead of a Dialog.
soconnor
2025-12-14 02:16:29 -05:00