Commit Graph

83 Commits

Author SHA1 Message Date
Your Name
f3b6bb0b21 add template_id to Invoice interface and updateInvoiceTemplate action 2026-02-18 14:38:14 +02:00
Your Name
b09e6d0fb6 add template_id column to invoices table and update_invoice_template command 2026-02-18 14:37:26 +02:00
Your Name
3b1e9a2004 add invoice templates v2 implementation plan 2026-02-18 14:32:38 +02:00
Your Name
cc3598f407 add invoice templates v2 complete redesign design doc 2026-02-18 14:28:41 +02:00
Your Name
41ddba5d13 integrate template picker into invoice create and preview views 2026-02-18 13:35:11 +02:00
Your Name
1eadc82db7 add business identity settings for invoice branding 2026-02-18 13:34:44 +02:00
Your Name
5308006578 add InvoicePreview.vue with all 7 header styles and 5 table styles 2026-02-18 13:30:27 +02:00
Your Name
efeba209cf add InvoiceTemplatePicker split-pane component 2026-02-18 13:28:40 +02:00
Your Name
978b3baec3 add config-driven jsPDF invoice renderer with all header and table styles 2026-02-18 13:26:11 +02:00
Your Name
6ea47e534f add 15 invoice template configs and registry 2026-02-18 13:16:36 +02:00
Your Name
873876a7ed add invoice templates implementation plan
9-task plan covering template config types, jsPDF renderer,
HTML preview component, template picker UI, Invoices.vue
integration, business identity settings, and polish passes.
2026-02-18 13:12:37 +02:00
Your Name
a57bdc9867 add invoice templates design document
15 visually distinct templates across 4 tiers (Professional
Essentials, Creative & Modern, Warm & Distinctive, Premium &
Specialized) with template config schema, picker UI design,
shared renderer architecture, and business identity support.
2026-02-18 13:07:39 +02:00
Your Name
1bb6619a17 migrate remaining dialogs to Vue Transition, remove old keyframes
Convert Settings, Invoices, IdlePrompt, AppTrackingPrompt, and
AppDiscard dialogs from animate-modal-enter CSS class to proper
<Transition name="modal"> wrappers for enter/leave animations.
Remove unused animate-modal-enter and animate-dropdown-enter keyframes.
2026-02-18 11:36:35 +02:00
Your Name
85ef68c461 add transitions and micro-interactions across all views
- Page transitions with slide-up/fade on route changes (App.vue)
- NavRail sliding active indicator with spring-like easing
- List enter/leave/move animations on Entries, Projects, Clients, Timer
- Modal enter/leave transitions with scale+fade on all dialogs
- Dropdown transitions with overshoot on all select/picker components
- Button feedback (scale on hover/active), card hover lift effects
- Timer pulse on start, glow on stop, floating empty state icons
- Content fade-in on Dashboard, Reports, Calendar, Timesheet
- Tag chip enter/leave animations in AppTagInput
- Progress bar smooth width transitions
- Implementation plan document
2026-02-18 11:33:58 +02:00
Your Name
1bb1debad0 add animation CSS classes, keyframes, and reduced-motion support 2026-02-18 11:22:32 +02:00
Your Name
76f0c3cfd2 install @vueuse/motion and create spring presets 2026-02-18 11:19:52 +02:00
Your Name
6d17e488c3 add motion system design for animations and micro-interactions 2026-02-18 11:07:57 +02:00
Your Name
dff9ca60ff add daily/weekly goals, streaks, and time rounding
Settings Timer tab now has daily/weekly goal hour inputs. Dashboard
shows goal progress bars and streak counter. Settings Billing tab
has rounding toggle with increment and method selectors. New
rounding.ts utility for nearest/up/down time rounding.
2026-02-18 10:51:56 +02:00
Your Name
16c46d4c42 add budget progress indicators to Projects and Dashboard
Project edit dialog includes budget hours and amount fields. Project
cards show progress bars with color-coded status. Dashboard displays
budget alerts section for projects exceeding 75% of budget.
2026-02-18 10:51:47 +02:00
Your Name
7bef8f8723 integrate tags in Timer and Entries views
Timer shows tag selector below description, saves tags on stop.
Entries table displays tag chips per row with color coding.
Tags loaded from store on mount.
2026-02-18 10:51:39 +02:00
Your Name
17b6913677 add data import from CSV and JSON
Import utility with CSV parser, Toggl/Clockify format mapping, and
generic CSV column mapping. Settings Data tab has import UI with
file picker, format selector, preview table, and import execution.
2026-02-18 10:46:33 +02:00
Your Name
278dac1f69 enhance floating mini timer with controls and pop-out button
MiniTimer shows project color dot, name, elapsed time, stop button,
and expand-to-main button. Timer.vue has pop-out button when running.
2026-02-18 10:46:25 +02:00
Your Name
3792f38420 add global keyboard shortcuts for timer toggle and show app
Register CmdOrCtrl+Shift+T (toggle timer) and CmdOrCtrl+Shift+Z
(show app) via tauri-plugin-global-shortcut. Shortcut keys are
configurable in Settings Timer tab. Shortcuts re-register on change.
2026-02-18 10:46:18 +02:00
Your Name
e1f8f93b23 add profitability tab and favorites strip
Reports view now has Hours/Profitability tabs with per-project revenue
table. Timer view shows favorites strip for quick project selection
and a Save as Favorite button next to the description input.
2026-02-18 10:46:10 +02:00
Your Name
255a1486e8 add Calendar, Timesheet, and MiniTimer views
Calendar shows weekly time-block layout with hour rows, entry positioning,
current time indicator, and week navigation. Timesheet provides a weekly
grid with project/task rows, day columns, totals, and add-row functionality.
MiniTimer is a minimal always-on-top timer display for the floating window.
2026-02-18 10:39:08 +02:00
Your Name
35bfdfab5f add AppTagInput multi-select tag component 2026-02-18 10:35:18 +02:00
Your Name
3a80ba3496 add markdown rendering for entry descriptions 2026-02-18 10:35:12 +02:00
Your Name
3501d1e7d8 add duplicate, copy previous day/week, and repeat entry 2026-02-18 10:35:06 +02:00
Your Name
f4d8dcd9c7 add theme customization with accent colors and light mode 2026-02-18 10:34:59 +02:00
Your Name
b3f310d8e4 add global-shortcut plugin and mini timer window commands 2026-02-18 02:06:07 +02:00
Your Name
006d2028c1 add goals, profitability, timesheet, and import commands 2026-02-18 02:04:10 +02:00
Your Name
6ca526b348 add favorites table, CRUD commands, and Pinia store 2026-02-18 02:02:57 +02:00
Your Name
4ebfe3a442 add project budgets and rounding override columns 2026-02-18 02:02:13 +02:00
Your Name
f5e2aec698 add tags table, CRUD commands, and Pinia store 2026-02-18 02:01:04 +02:00
Your Name
5fcc87da81 dynamic currency symbols and integrated datetime picker
- Replace all hardcoded prefix="$" with :prefix="getCurrencySymbol()"
  in Settings, Projects, and Invoices views
- Replace hardcoded ($) labels with dynamic currency symbol
- Extend AppDatePicker with showTime prop + hour/minute v-models
  for integrated date+time selection
- Simplify Entries.vue to use single AppDatePicker with showTime
  instead of separate hour/minute inputs
2026-02-17 23:53:45 +02:00
Your Name
f7dcb1e403 add viewport margin to all modal dialogs 2026-02-17 23:41:59 +02:00
Your Name
5e67949d6d replace native datetime-local with custom date picker + time inputs 2026-02-17 23:41:24 +02:00
Your Name
d1c7ce406a replace all hardcoded en-US and $ formatting with locale-aware helpers 2026-02-17 23:39:31 +02:00
Your Name
313466ea15 replace native number inputs with AppNumberInput across all views 2026-02-17 23:36:02 +02:00
Your Name
a639ee067c add locale and currency settings with searchable dropdowns 2026-02-17 23:35:27 +02:00
Your Name
06ab77fa9b apply default hourly rate from settings when creating new projects 2026-02-17 23:35:24 +02:00
Your Name
61729baa29 add AppNumberInput component with press-and-hold repeat 2026-02-17 23:33:13 +02:00
Your Name
d37a827cb2 add searchable prop to AppSelect for filtering long option lists 2026-02-17 23:33:11 +02:00
Your Name
55de2a557a add locale utility with 140+ locales and 120+ currencies 2026-02-17 23:31:04 +02:00
Your Name
00817c8cdc add UI improvements batch implementation plan 2026-02-17 23:22:40 +02:00
Your Name
328d5638ef add UI improvements batch design (locale, datetime picker, number input, etc.) 2026-02-17 23:17:00 +02:00
Your Name
197d1708e1 add Clients view with card grid, dialogs, and billing details 2026-02-17 22:57:08 +02:00
Your Name
18d4d0edf9 add Client billing fields to store, /clients route, and reorder NavRail 2026-02-17 22:54:31 +02:00
Your Name
c1984b7ec4 add client billing fields to database and Rust backend 2026-02-17 22:52:51 +02:00
Your Name
e385aac789 add Clients view and NavRail reorg implementation plan 2026-02-17 22:48:22 +02:00