feat: animate heart icon, dynamic tools count in stats, trim tool summaries

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-28 17:53:33 +01:00
parent d6e01e4bf5
commit 83f071ec6b
4 changed files with 7 additions and 6 deletions

View File

@@ -19,7 +19,7 @@ export default function Footer() {
{/* Copyright */}
<p className="text-sm text-muted-foreground flex items-center gap-1">
© {currentYear} Kit.
<Heart className="h-4 w-4 text-primary shrink-0" fill="currentColor" />
<Heart className="h-4 w-4 text-primary shrink-0 animate-pulse" fill="currentColor" />
<a
href="https://pivoine.art"
target="_blank"

View File

@@ -1,10 +1,11 @@
'use client';
import { tools } from '@/lib/tools';
import { motion } from 'framer-motion';
const stats = [
{
number: '5',
number: tools.length,
label: 'Tools',
icon: (
<svg className="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">

View File

@@ -127,7 +127,7 @@ export function AppSidebar() {
<div className="flex items-center justify-between">
<p className="flex items-center gap-1 text-[10px] text-muted-foreground">
© {new Date().getFullYear()} Kit.
<Heart className="h-2.5 w-2.5 text-primary shrink-0" fill="currentColor" />
<Heart className="h-2.5 w-2.5 text-primary shrink-0 animate-pulse" fill="currentColor" />
<a
href="https://pivoine.art"
target="_blank"

View File

@@ -60,7 +60,7 @@ export const tools: Tool[] = [
href: '/media',
description: 'Browser-based media conversion for video, audio, and images.',
summary:
'Modern browser-based file converter powered by WebAssembly. Convert videos, images, and audio locally without server uploads. Privacy-first with no file size limits.',
'Modern browser-based file converter powered by WebAssembly. Convert videos, images, and audio locally without server uploads.',
icon: MediaIcon,
badges: ['Open Source', 'Converter', 'Free'],
},
@@ -71,7 +71,7 @@ export const tools: Tool[] = [
href: '/favicon',
description: 'Create a complete set of icons for your website.',
summary:
'Generate a complete set of favicons for your website. Includes PWA manifest and HTML embed code. All processing happens locally in your browser.',
'Generate a complete set of favicons for your website. Includes PWA manifest and HTML embed code.',
icon: FaviconIcon,
badges: ['Open Source', 'Generator', 'Free'],
},
@@ -93,7 +93,7 @@ export const tools: Tool[] = [
href: '/animate',
description: 'Visual editor for CSS keyframe animations with live preview.',
summary:
'Build and export CSS @keyframe animations visually. Configure timing, easing, transforms, and more — with a live preview and 20+ built-in presets. Export to plain CSS or Tailwind v4.',
'Build and export CSS @keyframe animations visually. Configure timing, easing, transforms, and more — with a live preview and 20+ built-in presets.',
icon: AnimateIcon,
badges: ['Open Source', 'CSS', 'Free'],
},