Major Features: - Add project costs feature with full CRUD operations - Implement toast notification system for better user feedback - Enhance analytics dashboard with improved visualizations - Add OIDC authentication improvements and debug tools Improvements: - Enhance reports with new filtering and export capabilities - Update command palette with additional shortcuts - Improve mobile responsiveness across all pages - Refactor UI components for consistency Removals: - Remove license server integration and related dependencies - Clean up unused license-related templates and utilities Technical Changes: - Add new migration 018 for project_costs table - Update models: Project, Settings, User with new relationships - Refactor routes: admin, analytics, auth, invoices, projects, reports - Update static assets: CSS improvements, new JS modules - Enhance templates: analytics, admin, projects, reports Documentation: - Add comprehensive documentation for project costs feature - Document toast notification system with visual guides - Update README with new feature descriptions - Add migration instructions and quick start guides - Document OIDC improvements and Kanban enhancements Files Changed: - Modified: 56 files (core app, models, routes, templates, static assets) - Deleted: 6 files (license server integration) - Added: 28 files (new features, documentation, migrations)
5.3 KiB
Command Palette Usage Guide
Overview
The TimeTracker command palette is a powerful keyboard-driven interface that allows you to quickly navigate and execute commands without using the mouse. It's inspired by similar features in modern applications like VS Code, Sublime Text, and GitHub.
Opening the Command Palette
You can open the command palette in multiple ways:
Primary Method
- Press
?(question mark key) - Simply press the?key anywhere in the application- Quick, easy to remember
- Doesn't require modifier keys
- Works on all keyboard layouts
Alternative Methods
- Click the command palette button in the navigation bar (terminal icon)
- Use the help menu dropdown
Quick Search
To quickly access the search functionality:
- Press
Ctrl+K(Windows/Linux) orCmd+K(Mac) - Focuses the search box- Works from anywhere in the application
- Instantly ready to search projects, tasks, clients, and more
Using the Command Palette
Once opened, you can:
- Type to search - Start typing to filter available commands
- Navigate - Use arrow keys (↑/↓) to move between commands
- Execute - Press
Enterto run the selected command or click on it - Cancel - Press
Escor click outside the palette to close
Available Commands
Navigation Commands
- Go to Dashboard (
g d) - Navigate to the main dashboard - Go to Projects (
g p) - View all projects - Go to Tasks (
g t) - View all tasks - Go to Reports (
g r) - View reports and analytics - Go to Invoices (
g i) - View invoices - Go to Analytics - View analytics dashboard
- Open Calendar - View the time tracking calendar
Action Commands
- New Time Entry (
n e) - Create a new manual time entry - New Project (
n p) - Create a new project - New Task (
n t) - Create a new task - New Client (
n c) - Create a new client - Start Timer - Start a new timer
- Stop Timer - Stop the currently running timer
General Commands
- Toggle Theme (
Ctrl+Shift+L) - Switch between light and dark mode - Open Help - View keyboard shortcuts help
Keyboard Sequences
Some commands can be triggered directly without opening the palette using key sequences:
g d- Go to Dashboardg p- Go to Projectsg t- Go to Tasksg r- Go to Reports
Type the first letter, then the second letter in quick succession (within 1 second).
Tips and Tricks
- Fuzzy Search - You don't need to type the exact command name. Type keywords related to what you want to do.
- Category Filtering - Commands are organized by category (Navigation, Actions, Timer, General)
- First-Time Hint - A tooltip will appear on your first visit showing you how to use the command palette
- Accessibility - Full keyboard navigation support with visual focus indicators
- Theme Support - The command palette automatically adapts to light and dark themes
Keyboard Shortcuts Reference
Press Shift+? to view the complete keyboard shortcuts help modal with all available commands.
Mobile Support
On mobile devices:
- Command palette can be accessed via the help menu
- Touch-friendly interface for selecting commands
- Keyboard shortcuts are hidden to save space
Implementation Details
The command palette features:
- Fast, responsive search
- Smooth animations and transitions
- Glass morphism effects
- Backdrop blur for better focus
- Color-coded command categories
- Visual keyboard shortcut hints
- Auto-completion and suggestions
Examples
Example 1: Quick Navigation
- Press
? - Type "proj"
- See "Go to Projects" highlighted
- Press
Enter
Example 2: Creating a New Task
- Press
? - Type "new task"
- Select "New Task"
- You're taken to the task creation page
Example 3: Using Sequences
- Press
g(wait briefly) - Press
d - Immediately navigate to Dashboard
Customization
The command palette can be extended with custom commands programmatically:
// Register a custom command
window.keyboardShortcuts.registerShortcut({
id: 'my-custom-command',
category: 'Custom',
title: 'My Custom Action',
description: 'Does something custom',
icon: 'fas fa-star',
keys: ['c', 'a'],
action: () => {
// Your custom action here
}
});
Troubleshooting
Command Palette Won't Open
- Make sure you're not typing in a text input field
- Check that JavaScript is enabled
- Try refreshing the page
Shortcuts Not Working
- Some shortcuts may conflict with browser shortcuts
- Try using the alternative
?key method - Check your keyboard language settings
Visual Issues
- Clear your browser cache
- Make sure you're using a modern browser (Chrome, Firefox, Safari, Edge)
- Check if dark/light theme is causing issues
Browser Support
The command palette works best on:
- Chrome/Edge (latest)
- Firefox (latest)
- Safari (latest)
- Opera (latest)
Requires:
- JavaScript enabled
- CSS backdrop-filter support (for blur effects)
Feedback
If you have suggestions for new commands or improvements to the command palette, please open an issue on the GitHub repository or contact support.
Pro Tip: Use the command palette regularly to speed up your workflow. Most power users find they can navigate 2-3x faster using keyboard shortcuts compared to clicking through menus!