feat(ui): enhance frontend architecture and improve user experience
CI/CD Pipeline / Test (push) Successful in 21m56s
CI/CD Pipeline / Security Scan (push) Successful in 10m54s
CI/CD Pipeline / Build and Push Images (push) Failing after 2m12s

Refactor the frontend to use a more consistent design system and improve the overall user interface and experience.

- Implement a consistent use of `Card` components across various pages (Dashboard, Settings, Notes, etc.).
- Improve layout responsiveness and spacing in several modules.
- Enhance the Tasks page with drag-and-drop status updates and a Kanban-style view.
- Update the Calendar view with better color coding for task priorities and types.
- Refactor the Bookmarks page to use a grid layout with improved card previews.
- Update the Nginx configuration to handle SPA routing and health checks more effectively.
- Standardize import paths using `@/` aliases.
- Fix minor bugs in message sending and loading states.
- Update Docker configuration to build from source and use a specific backend port.
This commit is contained in:
Tomas Dvorak
2026-05-20 16:36:48 +02:00
parent 1e377a01b0
commit 67dc5cc737
18 changed files with 503 additions and 681 deletions
+11 -11
View File
@@ -328,22 +328,22 @@ export function Calendar() {
const getPriorityColor = (priority: string) => {
switch (priority) {
case 'urgent': return 'text-primary'
case 'high': return 'text-primary'
case 'medium': return 'text-primary'
case 'low': return 'text-primary'
default: return 'text-primary'
case 'urgent': return 'text-red-500'
case 'high': return 'text-orange-500'
case 'medium': return 'text-yellow-500'
case 'low': return 'text-green-500'
default: return 'text-muted-foreground'
}
}
const getTypeColor = (type: string) => {
switch (type) {
case 'task': return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
case 'meeting': return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
case 'deadline': return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
case 'reminder': return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
case 'habit': return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
default: return 'bg-primary/10 text-primary dark:bg-primary/20 dark:text-primary'
case 'task': return 'bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400'
case 'meeting': return 'bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400'
case 'deadline': return 'bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400'
case 'reminder': return 'bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400'
case 'habit': return 'bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400'
default: return 'bg-gray-100 text-gray-700 dark:bg-gray-800 dark:text-gray-400'
}
}