lashman
4598ae3ac9
fix window controls not responding to clicks
2026-03-13 00:35:04 +02:00
lashman
f610bf58c4
update readme closing section
2026-03-13 00:07:02 +02:00
lashman
6343771f34
linux appimage build with docker, egl fallback, and webkitgtk fixes
2026-02-27 13:26:04 +02:00
lashman
c20d20ea6c
auto-detect date format (DD/MM vs MM/DD) in CSV imports
2026-02-21 16:56:27 +02:00
lashman
33001cda8d
close button and CSV import parsing for Clockify/Harvest
2026-02-21 14:56:53 +02:00
lashman
da0c65956e
complete export/import cycle and remove sample data
2026-02-21 01:34:26 +02:00
lashman
c5e96371ea
add CC0 license file and update readme badge
2026-02-21 01:20:20 +02:00
lashman
cf8affd057
tooltips, two-column timer, font selector, tray behavior, icons, readme
2026-02-21 01:15:57 +02:00
lashman
b3e02eacf5
boost text-tertiary contrast for WCAG AAA (7:1)
2026-02-20 18:40:19 +02:00
lashman
8d935bc3ec
auto-backup UI and window close hook
2026-02-20 15:41:38 +02:00
lashman
e0262bcbd8
export with all tables and auto-backup command
2026-02-20 15:40:02 +02:00
lashman
b5a2bb594c
rounding visibility in invoices and reports
2026-02-20 15:37:20 +02:00
lashman
9a5cf793d1
rounding visibility indicators on entry rows
2026-02-20 15:36:07 +02:00
lashman
a01f0bccb7
time-of-day heatmap in reports patterns tab
2026-02-20 15:32:20 +02:00
lashman
c45f46bbfe
project health badges and attention section
2026-02-20 15:32:14 +02:00
lashman
c5afc51a4e
weekly comparison indicators and sparklines on dashboard
2026-02-20 15:32:07 +02:00
lashman
73db4fb59c
receipt thumbnails, lightbox, and file picker for expenses
2026-02-20 15:25:18 +02:00
lashman
47d6f78fac
receipt lightbox component with zoom and focus trap
2026-02-20 15:23:11 +02:00
lashman
a477851da4
global shortcut for quick entry dialog
2026-02-20 15:20:27 +02:00
lashman
0c72998176
global quick entry dialog component
2026-02-20 15:18:34 +02:00
lashman
51c9d36f40
timesheet row persistence and copy last week
2026-02-20 15:17:01 +02:00
lashman
21f1c738f0
timesheet row persistence backend
2026-02-20 15:15:50 +02:00
lashman
2a96464635
entry template management in settings
2026-02-20 15:10:48 +02:00
lashman
a176b1441a
entry template picker and save-as-template in entries view
2026-02-20 15:09:37 +02:00
lashman
ff700834a4
entry templates pinia store
2026-02-20 15:07:18 +02:00
lashman
a4c7da4a2a
entry templates CRUD backend
2026-02-20 15:06:50 +02:00
lashman
2fd16a1bcb
cascade delete dialog for clients with dependency counts
2026-02-20 15:02:39 +02:00
lashman
05ad94302b
client cascade delete with dependency counts
2026-02-20 15:01:33 +02:00
lashman
e41c411e4f
smart timer safety net - save dialog on stop without project
2026-02-20 14:58:02 +02:00
lashman
cd15b6e4fc
timer save dialog for no-project and long-timer scenarios
2026-02-20 14:56:17 +02:00
lashman
7cc5611179
use batch save for invoice items
2026-02-20 14:55:17 +02:00
lashman
6b8d50f71a
batch invoice items save with transaction
2026-02-20 14:54:37 +02:00
lashman
c54c8a6d7d
independent try/catch per onboarding detection call
2026-02-20 14:47:26 +02:00
lashman
5cee94c893
standardize error handling across all stores
2026-02-20 14:46:56 +02:00
lashman
db603577eb
use unified error handler in entries store
2026-02-20 14:43:10 +02:00
lashman
70c4fa9967
unified error handler with retry for transient errors
2026-02-20 14:42:30 +02:00
lashman
44b088508d
persistent notifications toggle in settings
2026-02-20 14:40:50 +02:00
lashman
154cc535a5
toast undo button and hover/focus pause
2026-02-20 14:38:34 +02:00
lashman
10c9e31884
toast auto-dismiss with undo and pause support
2026-02-20 14:38:08 +02:00
lashman
298333f569
add tour store for guided walkthrough state
2026-02-20 09:36:26 +02:00
lashman
2624a344ba
tidy up project structure and normalize formatting
2026-02-19 22:43:14 +02:00
lashman
a3bedc2283
mini timer renders via window label instead of hash routing
2026-02-18 15:26:44 +02:00
lashman
df4970d29c
mini timer window blank due to hash routing mismatch
2026-02-18 15:23:20 +02:00
lashman
4fd304516a
load invoice templates from JSON files via backend
2026-02-18 15:17:54 +02:00
lashman
f996c42bcc
load invoice templates from JSON files in data/templates directory
2026-02-18 15:12:30 +02:00
lashman
f119d20db5
delete invoice_items before invoice to prevent FK constraint failure
2026-02-18 15:07:43 +02:00
lashman
480c478dac
make template picker full-screen with fixed positioning so buttons are visible
2026-02-18 15:05:02 +02:00
lashman
c3dd9da772
rewrite InvoicePreview with 15 unique typographic layouts
2026-02-18 14:50:49 +02:00
lashman
98834305f0
rewrite PDF renderer with 15 unique typographic layouts
2026-02-18 14:45:38 +02:00
lashman
c5ba7bf279
add two-step invoice flow with full-screen template picker
2026-02-18 14:43:55 +02:00
lashman
fe12d570a2
update invoicePdf wrapper with new default template ID
2026-02-18 14:41:23 +02:00
lashman
4eb0b08f2b
rewrite invoice template configs with layout IDs and colors
2026-02-18 14:39:01 +02:00
lashman
e21e2fa6dc
add template_id to Invoice interface and updateInvoiceTemplate action
2026-02-18 14:38:14 +02:00
lashman
8917b47601
add template_id column to invoices table and update_invoice_template command
2026-02-18 14:37:26 +02:00
lashman
61dc6a7009
integrate template picker into invoice create and preview views
2026-02-18 13:35:11 +02:00
lashman
b75fd7e579
add business identity settings for invoice branding
2026-02-18 13:34:44 +02:00
lashman
5e58ae0bd1
add InvoicePreview.vue with all 7 header styles and 5 table styles
2026-02-18 13:30:27 +02:00
lashman
17d458ba2b
add InvoiceTemplatePicker split-pane component
2026-02-18 13:28:40 +02:00
lashman
eb2795ba77
add config-driven jsPDF invoice renderer with all header and table styles
2026-02-18 13:26:11 +02:00
lashman
3a7282818b
add 15 invoice template configs and registry
2026-02-18 13:16:36 +02:00
lashman
7d03f95b4c
migrate remaining dialogs to Vue Transition, remove old keyframes
2026-02-18 11:36:35 +02:00
lashman
f41c682ce0
add transitions and micro-interactions across all views
2026-02-18 11:33:58 +02:00
lashman
1422231040
add animation CSS classes, keyframes, and reduced-motion support
2026-02-18 11:22:32 +02:00
lashman
14fe694fa9
install @vueuse/motion and create spring presets
2026-02-18 11:19:52 +02:00
lashman
f5a2bf1bb8
add daily/weekly goals, streaks, and time rounding
2026-02-18 10:51:56 +02:00
lashman
a602f6c407
add budget progress indicators to Projects and Dashboard
2026-02-18 10:51:47 +02:00
lashman
b231df4819
integrate tags in Timer and Entries views
2026-02-18 10:51:39 +02:00
lashman
4fc8b0e51b
add data import from CSV and JSON
2026-02-18 10:46:33 +02:00
lashman
8c92a71949
enhance floating mini timer with controls and pop-out button
2026-02-18 10:46:25 +02:00
lashman
d9c32d5650
add global keyboard shortcuts for timer toggle and show app
2026-02-18 10:46:18 +02:00
lashman
ddb3fb3b08
add profitability tab and favorites strip
2026-02-18 10:46:10 +02:00
lashman
bd1b2c36d1
add Calendar, Timesheet, and MiniTimer views
2026-02-18 10:39:08 +02:00
lashman
9dc7efa92e
add AppTagInput multi-select tag component
2026-02-18 10:35:18 +02:00
lashman
ff52246b13
add markdown rendering for entry descriptions
2026-02-18 10:35:12 +02:00
lashman
65220a3d34
add duplicate, copy previous day/week, and repeat entry
2026-02-18 10:35:06 +02:00
lashman
aa394fef40
add theme customization with accent colors and light mode
2026-02-18 10:34:59 +02:00
lashman
f3e0076fa2
add global-shortcut plugin and mini timer window commands
2026-02-18 02:06:07 +02:00
lashman
a2b892756a
add goals, profitability, timesheet, and import commands
2026-02-18 02:04:10 +02:00
lashman
307386b2cc
add favorites table, CRUD commands, and Pinia store
2026-02-18 02:02:57 +02:00
lashman
e99443bd5c
add project budgets and rounding override columns
2026-02-18 02:02:13 +02:00
lashman
336938b686
add tags table, CRUD commands, and Pinia store
2026-02-18 02:01:04 +02:00
lashman
7912c39090
dynamic currency symbols and integrated datetime picker
2026-02-17 23:53:45 +02:00
lashman
fa7a29619c
add viewport margin to all modal dialogs
2026-02-17 23:41:59 +02:00
lashman
c21fe69aab
replace native datetime-local with custom date picker + time inputs
2026-02-17 23:41:24 +02:00
lashman
50e317aec6
replace all hardcoded en-US and $ formatting with locale-aware helpers
2026-02-17 23:39:31 +02:00
lashman
70d927828a
replace native number inputs with AppNumberInput across all views
2026-02-17 23:36:02 +02:00
lashman
fad3f42fdf
add locale and currency settings with searchable dropdowns
2026-02-17 23:35:27 +02:00
lashman
b684080ae7
apply default hourly rate from settings when creating new projects
2026-02-17 23:35:24 +02:00
lashman
380c8ec602
add AppNumberInput component with press-and-hold repeat
2026-02-17 23:33:13 +02:00
lashman
212ac4479f
add searchable prop to AppSelect for filtering long option lists
2026-02-17 23:33:11 +02:00
lashman
c684d02352
add locale utility with 140+ locales and 120+ currencies
2026-02-17 23:31:04 +02:00
lashman
5ad3f91f2e
add Clients view with card grid, dialogs, and billing details
2026-02-17 22:57:08 +02:00
lashman
5f97dbd04e
add Client billing fields to store, /clients route, and reorder NavRail
2026-02-17 22:54:31 +02:00
lashman
b2d401e6c8
add client billing fields to database and Rust backend
2026-02-17 22:52:51 +02:00
lashman
8b754bcb33
make custom dropdowns and date pickers respect UI zoom setting
2026-02-17 22:35:42 +02:00
lashman
72d8f269f6
replace all native selects and date inputs with custom components
2026-02-17 22:27:51 +02:00
lashman
8378c10da6
add AppDatePicker custom calendar component
2026-02-17 22:24:47 +02:00
lashman
e513a608a2
add AppSelect custom dropdown component
2026-02-17 22:22:43 +02:00
lashman
1aec48088b
upgrade typography - Plus Jakarta Sans headings, JetBrains Mono data, 14px base
2026-02-17 22:06:48 +02:00
lashman
4c696546d8
bump border-radius globally - rounded to rounded-lg, rounded-lg to rounded-xl
2026-02-17 21:56:48 +02:00
lashman
a94460b6c6
redesign Settings with left sidebar tabs per Apple HIG
2026-02-17 21:49:48 +02:00
lashman
df98c1f3ba
reorganize Settings per Apple HIG - auto-save, progressive reveal, danger zone
2026-02-17 21:43:04 +02:00
lashman
987b4c7e23
window dragging - use startDragging() API instead of data attribute
2026-02-17 21:36:30 +02:00
lashman
23356fcec6
persist window position and size between runs
2026-02-17 21:33:32 +02:00
lashman
9759a4e6c8
portable storage - data directory next to exe
2026-02-17 21:33:26 +02:00
lashman
5829e067ab
zoom initialization and toast container in App.vue
2026-02-17 21:32:15 +02:00
lashman
ce58174a5a
redesign Settings - amber save, UI zoom, toasts
2026-02-17 21:31:54 +02:00
lashman
e6bc92e932
redesign Invoices - amber tabs and totals, rich empty state
2026-02-17 21:31:05 +02:00
lashman
b194d94484
redesign Reports - amber actions and stats, toast notifications
2026-02-17 21:29:53 +02:00
lashman
7bac89a0bd
redesign Entries - filter container, amber actions, rich empty state
2026-02-17 21:28:42 +02:00
lashman
d3d0b6a149
redesign Projects - amber button, color presets, rich empty state
2026-02-17 21:27:49 +02:00
lashman
60bd3108fa
redesign Timer - amber Start, colon pulse, toast
2026-02-17 21:26:33 +02:00
lashman
502e23a0d5
redesign Dashboard - greeting, amber stats, rich empty state
2026-02-17 21:25:52 +02:00
lashman
a842b61c58
amber wordmark and NavRail active indicator
2026-02-17 21:25:08 +02:00
lashman
42a738e738
add toast notification system
2026-02-17 21:25:02 +02:00
lashman
1bf685a7fc
overhaul design tokens - charcoal palette + amber accent
2026-02-17 21:24:15 +02:00
lashman
729e9347ca
syntax error in Invoices.vue
2026-02-17 18:44:02 +02:00
lashman
b246801b02
add Dashboard view
2026-02-17 18:30:01 +02:00
lashman
55f77a03af
initialize Tauri backend with SQLite database
2026-02-17 18:03:12 +02:00
lashman
77854ebe6a
initialize Tauri v2 + Vue 3 project
2026-02-17 17:46:39 +02:00
lashman
cbe4d18c0d
Initial commit
2026-02-17 17:37:20 +02:00