Commit Graph
100 Commits
Author SHA1 Message Date
valknarandCopilot 6d4426037c Fix FFmpeg import: use direct import like ImageMagick
Import FFmpeg at module level instead of dynamic import. The build now
compiles cleanly without Turbopack bundler warnings.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 20:29:55 +01:00
valknarandCopilot 3a8b409d1d Fix FFmpeg WASM bundler error: use runtime import instead of static analysis
The @ffmpeg/ffmpeg package has internal dynamic imports that Turbopack
cannot statically analyze, but they work fine at runtime. This change
moves the import to the loadFFmpeg function where it's needed, allowing
Turbopack to skip static analysis and let the bundler resolve it at runtime.

Fixes: Cannot find module as expression is too dynamic error

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 20:27:53 +01:00
valknarandCopilot b5812c97b4 fix: handle FFmpeg dynamic import more gracefully
- lazy-load FFmpeg class to avoid static analysis issues
- add proper null checks for FFmpeg instance
- use initFFmpeg() helper to manage async initialization
- fixes bundler 'too dynamic' error with static-friendly approach

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 20:24:24 +01:00
valknarandCopilot 45a48abc91 fix: resolve FFmpeg WASM loader dynamic import error
- moved FFmpeg and initializeImageMagick imports to top level (static)
- removed dynamic imports that caused bundler analysis issues
- simplified ImageMagick initialization
- fixes: 'Cannot find module as expression is too dynamic' error

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 20:22:04 +01:00
valknar dd71130977 fix: conversion options styling 2026-02-25 20:20:04 +01:00
valknarandCopilot b560dcbc8e refactor: streamline media converter UI and layout
- consolidated file upload and metadata display in single card
- replaced complex FormatSelector with simple shadcn Select component
- inlined all conversion options without toggle display
- restructured layout to 2-column grid matching pastel app pattern:
  - left column: upload and conversion options
  - right column: conversion results
- removed unused components (FileInfo, FormatSelector, ConversionOptionsPanel)
- cleaned up imports and simplified component hierarchy

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-25 19:59:22 +01:00
valknar 56cdb1ae4a fix: remove media conversion presets 2026-02-25 19:20:22 +01:00
valknar 4668d771c1 style: remove emojis from media app format presets 2026-02-25 18:34:39 +01:00
valknar 4898ad942b style: remove emojis from media app quality presets 2026-02-25 18:30:23 +01:00
valknar 317a80dbad refactor: remove category colors from units app 2026-02-25 18:24:15 +01:00
valknar f28a2d1eab refactor: replace html range input with shadcn slider in batch operations 2026-02-25 18:18:03 +01:00
valknar 7eeb8399b3 refactor: externalize AppPage component and streamline all tool pages 2026-02-25 18:04:32 +01:00
valknar 71c22e465e refactor: replace html textarea with shadcn Textarea component 2026-02-25 16:20:25 +01:00
valknar 40e0b0e375 refactor: streamline TextInput classes with shadcn input 2026-02-25 16:13:10 +01:00
valknar 880bce157b style: improve light theme border and input visibility 2026-02-25 16:09:29 +01:00
valknar 2fb2eaa54c refactor: use Card, CardTitle and CardContent in Figlet and Units apps 2026-02-25 16:00:10 +01:00
valknar 4ccf316184 refactor: use shadcn Card component in pastel app 2026-02-25 13:35:29 +01:00
valknar 57ba63aa32 fix: update nginx fallback to properly serve custom 404 page 2026-02-25 11:49:39 +01:00
valknar 0732c9c5e2 feat: add custom 404 page and update nginx error handling 2026-02-25 11:46:37 +01:00
valknar 9bee255647 style: rename Pastel (Color) to Pastel in sidebar 2026-02-25 11:23:03 +01:00
valknar da7f60cf04 docs: update README with Media app information and project structure 2026-02-25 11:22:38 +01:00
valknar 5612176996 refactor: externalize app icons and update stats count 2026-02-25 11:14:24 +01:00
valknar 77e0114e96 refactor: load WASM from local assets via postinstall script 2026-02-25 10:52:59 +01:00
valknar 08e1cac3a0 feat: streamline WASM loading with local priority and cleanup UI 2026-02-25 10:44:49 +01:00
valknar 84cf6ecab0 feat: remove keyboard shortcuts from media app 2026-02-25 10:15:28 +01:00
valknar fbc8cdeebe feat: add media converter app and fix compilation errors 2026-02-25 10:07:25 +01:00
valknar 1da6168f37 fix: sidebar logo 2026-02-24 19:19:34 +01:00
valknar 5f46ba8c74 fix: breadcrumb root 2026-02-24 19:14:58 +01:00
valknar a604789285 fix: figlet cards padding 2026-02-24 19:05:22 +01:00
valknar 5d6ace4e46 fix: old styling with new shadcn components 2026-02-24 16:58:17 +01:00
valknar 9c6b184f7e refactor: update UI component usage to match latest shadcn APIs 2026-02-24 16:20:35 +01:00
valknar bf4729fa4d feat: integrate icon.png as favicon and remove legacy icon.svg 2026-02-24 15:27:16 +01:00
valknar d61add82cd feat: implement sort by hue for named colors using pastel-wasm 2026-02-24 10:45:00 +01:00
valknar d65a7c6c30 feat: remove statistics from Distinct Colors generator 2026-02-24 09:45:09 +01:00
valknar f779d4aa9d fix: remove color_spaces from CapabilitiesData to match implementation 2026-02-23 18:28:30 +01:00
valknar 3061260eec feat: remove colorspace option from pastel gradients (not supported by API) 2026-02-23 18:22:12 +01:00
valknar ab930a3279 fix: oklab string format and debounced color history 2026-02-23 17:52:06 +01:00
valknar 2d59f3aaca docs: update README and repository structure 2026-02-23 17:43:38 +01:00
valknar 4e7fc24582 chore: update icon and units description 2026-02-23 17:41:03 +01:00
valknar 906b0e081b feat: create app/icon.png from app/icon.svg 2026-02-23 17:33:12 +01:00
valknar 95b270810b feat: use NEXT_PUBLIC_SITE_URL and remove redundant preconnect 2026-02-23 17:21:46 +01:00
valknar b7d427023e feat: add Umami tracking support 2026-02-23 17:09:44 +01:00
valknar 4108ffc23f fix: app shell header logo display 2026-02-23 14:04:13 +01:00
valknar 43faed224f Feat: Refine UI and consolidate components
- Updated the heading in the Pastel page from 'Color Playground' to 'Pastel'.
- Adjusted the logo size in the Hero component for better visual balance.
- Removed duplicate/unused Footer components from pastel layout and ui directories.
2026-02-23 14:00:09 +01:00
valknar 5ab1387165 style: update Logo and Kit title styling in App Shell 2026-02-23 13:33:17 +01:00
valknar facb7e5161 style: remove outer margins and scale elements in app/icon.svg 2026-02-23 13:21:59 +01:00
valknar 90b045f349 style(figlet): update default text and remove search keyboard hint 2026-02-23 09:46:35 +01:00
valknar 6fbcdd3674 docs: generate comprehensive new README 2026-02-23 09:28:57 +01:00
valknar 8ce12c4c70 style(pastel): unify card title sizes with figlet 2026-02-23 09:25:51 +01:00
valknar fd2ada4438 refactor(pastel): remove keyboard shortcuts and useKeyboard hook 2026-02-23 08:41:32 +01:00
valknar 2160b9aaa0 style: unify keyboard shortcut hints across tools using Pastel style
- Add shortcut hints below tool descriptions in Figlet and Units pages
- Revert experimental button-based shortcut layout in Units
- Remove redundant shortcut hints from Units footer
- Ensure consistent kbd tag styling across the application
2026-02-23 08:27:26 +01:00
valknar 7806bcbede refactor: flatten Pastel routes by removing intermediate palettes and accessibility paths
- Move sub-routes from /pastel/palettes/* and /pastel/accessibility/* to direct children of /pastel
- Update AppSidebar navigation links
- Update Pastel Navbar and Footer links
- Update Tailwind source directives in pastel/globals.css
- Remove intermediate page files
2026-02-23 08:18:44 +01:00
valknar 3a100f8fde feat: move units search and category select to a row below description
- Relocate SearchUnits and Category Select into a dedicated row at the top of MainConverter
- Remove them from the converter card header for a cleaner layout
- Update vertical spacing for better visual hierarchy
2026-02-23 08:09:51 +01:00
valknar 93bbc2ef22 fix: improve robustness of search focus keyboard shortcut
- Update FontSelector to prevent '/' shortcut from triggering when another input is focused
- Ensure consistent behavior for '/' focus across Figlet and Units tools
2026-02-23 08:05:33 +01:00
valknar 81fa370ec9 style: update unit category colors to match Tailwind palette
- Harmonize category colors with standard Tailwind CSS 500 shades
- Use Rose, Violet, Emerald, Amber, Blue, and Indigo for grouping related units
- Synchronize hex values in units.ts with OKLCH variables in globals.css
2026-02-23 08:03:55 +01:00
valknar d767f9714c style: improve icon alignment in figlet font selector tabs
- Switch from inline-block to flex items-center justify-center for filter tab buttons
- Adjust icon spacing for better visual balance
2026-02-23 08:01:48 +01:00
valknar 59ad5143eb style: unify button row styling in figlet font preview
- Update Copy, Share, PNG, and TXT button icons to h-3 w-3 with mr-2
- Matches the styling of the Random font button for a consistent UI
2026-02-23 08:00:34 +01:00
valknar d9315ecf7d style: streamline inputs and selects with more visible borders
- Increase --border opacity in both light and dark modes
- Harmonize Input and Select components with consistent rounded-lg corners
- Replace native selects in MainConverter with styled Select component
2026-02-23 07:56:16 +01:00
valknar 9a95e97150 feat: align units converter header into a single row
- Move unit search into the CardHeader
- Align title, search, and category selector into one row using flexbox
- Update SearchUnits component to allow custom class names and remove hardcoded max-width
2026-02-23 07:51:39 +01:00
valknar dbdd28d552 feat: move unit search input inside the converter card
- Relocate SearchUnits from a standalone position to inside the main converter card
- Add a subtle border-b separator for visual clarity within the card content
2026-02-23 07:50:03 +01:00
valknar 30f88c6f9d feat: replace category grid with select dropdown in units converter
- Consolidate category selection into the main converter card
- Use a space-saving Select component for category switching
- Add category color indicator to the select dropdown
2026-02-23 07:48:06 +01:00
valknar e7cc825c54 feat: remove recent conversions functionality from units
- Delete ConversionHistory component
- Remove history-related logic and state from MainConverter
- Clean up history imports and types in CommandPalette and storage utilities
- Remove history storage functions from lib/units/storage.ts
2026-02-23 07:45:15 +01:00
valknar d1c95254b0 fix: update nginx for proper Next.js deep linking support
- Prioritize .html in try_files to correctly resolve static export routes
2026-02-23 02:36:54 +01:00
valknar d2dcd2ca9f fix: resolve linting errors and improve ESLint configuration
- Downgrade ESLint to v9 to avoid circular structure errors in v10 config validation
- Downgrade eslint-config-next to v15 for stability
- Configure eslint.config.mjs with FlatCompat and appropriate ignores (.next, out)
- Escape entities in ColorBlindPage and SearchUnits to fix react/no-unescaped-entities
- Use useMemo for debounced function in FigletConverter to fix react-hooks/exhaustive-deps
2026-02-23 02:31:49 +01:00
valknar a9d0fd8443 refactor: streamline toast system and harmonize UI across tools
- Migrate all toast notifications to sonner and remove custom ToastProvider
- Align Card and TextInput styling across Figlet and Pastel (rounded-lg, border-based)
- Fix build error by removing non-existent export in lib/units/index.ts
- Clean up unused Figlet components and constants
2026-02-23 02:04:46 +01:00
valknar 09838a203c refactor: consolidate utilities, clean up components, and improve theme persistence
- Consolidate common utilities (cn, format, time) into lib/utils
- Remove redundant utility files from pastel and units directories
- Clean up unused components (Separator, KeyboardShortcutsHelp)
- Relocate CommandPalette to components/units/ui/
- Force dark mode on landing page and improve theme persistence logic
- Add FOUC prevention script to RootLayout
- Fix sidebar height constraint in AppShell
2026-02-23 00:40:45 +01:00
valknar 2000623c67 feat: implement Figlet, Pastel, and Unit tools with a unified layout
- Add Figlet text converter with font selection and history
- Add Pastel color palette generator and manipulation suite
- Add comprehensive Units converter with category-based logic
- Introduce AppShell with Sidebar and Header for navigation
- Modernize theme system with CSS variables and new animations
- Update project configuration and dependencies
2026-02-22 21:35:53 +01:00
valknarandClaude Opus 4.6 ff6bb873eb update: tools count from 6 to 3
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 07:54:22 +01:00
valknarandClaude Opus 4.6 67e05f9890 remove: Audio, Paint, and Convert tools from kit listing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 07:47:58 +01:00
valknarandClaude 443b87f97b update: replace Draw with Paint image editor
- Remove Draw tool (whiteboard/diagrams)
- Add Paint image editor (paint.kit.pivoine.art)
- Features: multi-layer canvas, drawing tools, 50+ filters
- Inspired by miniPaint, built with modern web technologies
- Update icon to paintbrush
- Keep gradient-pink-rose styling

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 21:19:28 +01:00
valknarandClaude f109093eab fix: replace file icon with git branch icon
- Update Hero and Footer to use proper git branch icon
- Icon shows branching pattern with circles (commits)
- Better representation of git repository link
- Maintains hover color transitions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 22:03:48 +01:00
valknarandClaude 398c4cd8ec feat: add git icons to View on Dev links
- Add file-plus icon to Hero button
- Add file-plus icon to Footer link
- Icons change color on hover (gray → purple)
- Better visual indication for repository links

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 21:59:47 +01:00
valknarandClaude 59b88518f6 update: replace GitHub links with dev.pivoine.art
- Update hero button: GitHub → dev.pivoine.art/valknar/kit-ui
- Update footer link: GitHub → dev.pivoine.art/valknar/kit-ui
- Remove GitHub icon from both locations
- Change labels to "View on Dev"
- Repository now hosted on dev.pivoine.art

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 21:55:10 +01:00
valknarandClaude 312dd7fda0 remove: GitHub link from footer
- Remove GitHub icon and link from footer
- Repository now hosted at dev.pivoine.art/valknar/kit-ui
- Center footer content with justify-center

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 21:32:34 +01:00
valknarandClaude f4bc89e5fe fix: correct Audio gradient class name
- Change gradient-orange-red to gradient-orange-pink
- Use correct gradient class that exists in globals.css
- Fixes missing colors on Audio tool card

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 18:13:00 +01:00
valknarandClaude 4efb2d536d design: update Audio tool gradient to orange-red
- Change Audio gradient from purple-blue to orange-red
- Update accent color to #f97316 (vibrant orange)
- Better differentiation from Pastel (indigo-purple)
- Orange-red gradient fits audio/music theme

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 18:10:57 +01:00
valknarandClaude b094bd3af9 update: replace Stirling with Audio tool
- Remove Stirling PDF toolkit from tools list
- Add Audio editor (audio.kit.pivoine.art)
- Audio features: multi-track editing, effects, real-time analysis
- Export formats: WAV, MP3, OGG, FLAC
- Browser-based, privacy-first audio editing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 15:30:41 +01:00
valknarandClaude 4dcc7e7025 remove: delete GitHub Actions workflow
- Remove .github/workflows/docker-publish.yml
- CI/CD no longer needed for this project

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 11:31:49 +01:00
valknarandClaude be2227ef6f update: rebrand Vert to Convert with improved description
Build and Push Docker Image / build-and-push (push) Failing after 1m15s
- Rename tool from "Vert" to "Convert" across all files
- Update URL: vert.kit.pivoine.art → convert.kit.pivoine.art
- Improve description to highlight WebAssembly technology
- Update metadata keywords from 'vert' to 'convert'
- Better reflect actual features: videos, images, and audio conversion

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 11:18:52 +01:00
valknarandClaude 593c76de5c design: improve UI consistency and footer layout
- Update text sizing to text-base throughout for consistency
- Improve arrow icon visibility (gray-400 → gray-200 on hover)
- Reorganize tool badges: Open Source first, specialty second, Free third
- Update badge labels: Vert (Converter), Stirling (PDF), Units/Figlet (Open Source)
- Redesign footer: single-row layout with brand pill, centered copyright, GitHub link
- Update footer border: lighter gray-600, constrained to content width

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 16:53:03 +01:00
valknarandClaude 9dd47173d9 fix: improve card hover contrast and update Figlet icon
Card Hover Improvements:
- Increased gradient overlay opacity from 10% to 30% on hover
- Much better contrast and visibility
- Cards now have more prominent hover state
- Better user feedback on interaction

Figlet Icon Update:
- Changed from document icon to a-arrow-up icon
- Letter 'A' with upward arrow representing text/typography
- Better represents ASCII art text generation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 16:12:05 +01:00
valknarandClaude 5d549ed32c design: finalize logo and update Pastel to palette icon
Logo Updates:
- Using authentic Lucide brush and wrench icons
- Wrench vertical, brush horizontal (90° rotation)
- Aligned bottom edges for visual balance
- Scaled up to 5x for better visibility
- Removed center dot for cleaner look

Pastel Icon:
- Changed from paintbrush to proper palette icon
- Palette with thumb hole and color dots
- Better represents color manipulation tool

Visual improvements:
- Clean, professional crossed tools design
- Proper alignment and spacing
- Large, visible icons at all sizes
- Consistent with Lucide icon library

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 16:08:28 +01:00
valknarandClaude a37b0e5b08 design: use authentic Lucide icons (brush × wrench) crossed
Logo Update:
- Using official Lucide SVG paths for brush and wrench icons
- Crossed in X formation (45° and -45° rotation)
- Professional, recognizable design from established icon library

Icon Details:
- Wrench (Lucide): Purple gradient (#667eea → #a855f7)
- Brush (Lucide): Orange-to-pink gradient (#f59e0b → #ec4899)
- Brush bristles: Green-cyan fill with transparency
- Center circle: Purple-to-cyan gradient accent

Animations:
- Wrench draws in with path animation
- Brush draws in with delay
- Center circle pops in with spring effect
- Smooth, professional entrance

Favicon:
- Matching crossed Lucide icons for 64x64
- Scaled appropriately for small sizes
- Dark background with gradient icons

Benefits:
- Authentic, recognizable icons from Lucide library
- Professional design language
- Consistent with modern UI/UX standards
- Clear symbolism: utility (wrench) + creativity (brush)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 15:56:57 +01:00
valknarandClaude 408caebdf0 design: redesign logo with clean Lucide-style icons
Logo Redesign:
- Clean, minimal circular badge design
- Beautiful gradient background (indigo → purple → cyan)
- White outlined icons in Lucide/Heroicons style
- Wrench and paintbrush side-by-side
- Professional and modern aesthetic

Icon Design:
- Wrench: Simple outline with open-end head
- Paintbrush: Clean brush with bristles and handle
- Both icons use consistent 6px stroke width
- Smooth entrance animations (slide in from sides)

Favicon Update:
- Matching circular badge design for 64x64
- Clear visibility at small sizes
- Consistent white icons on gradient background
- Professional brand identity

Colors:
- Background gradient: #667eea → #8b5cf6 → #06b6d4
- Icons: Pure white (#ffffff) for maximum contrast
- Clean, modern, accessible design

Animations:
- Background circle scales in
- Wrench slides in from left
- Paintbrush slides in from right
- Smooth, subtle entrance effects

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 15:54:15 +01:00
valknarandClaude 2d421c9cac design: update logo to crossed wrench and brush
Logo Redesign:
- Simple, beautiful crossed design (wrench × brush in X formation)
- Wrench: Bottom-left to top-right with purple gradient
- Brush: Top-left to bottom-right with orange-red gradient
- Center circle at intersection with purple-to-cyan gradient
- Clean, minimal aesthetic with smooth animations

Favicon Update:
- Matching crossed design scaled for 64x64
- Clear visibility at small sizes
- Professional and memorable icon

Visual Elements:
- Wrench: Indigo (#667eea) to Purple (#a855f7) gradient
- Brush handle: Amber (#f59e0b) to Red (#ef4444) gradient
- Brush ferrule: Gray metal finish
- Brush bristles: Green (#10b981) to Cyan (#06b6d4) gradient
- Center: Purple to Cyan radial gradient

Animations:
- Initial rotation animation on logo
- Progressive drawing of wrench and brush
- Bristles expand effect
- Center circle pops in with spring animation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 15:49:32 +01:00
valknarandClaude 41c77dce9d refactor: remove Paint tool from toolkit
- Removed Paint card from ToolsGrid
- Updated Stats from 7 to 6 tools
- Updated Footer badge from 7 to 6 tools
- Removed Paint link from Footer tools column
- Removed Paint from README Available Tools section

Current tools (6):
- Vert (file converter)
- Pastel (color toolkit)
- Stirling (PDF toolkit)
- Units (unit converter)
- Draw (whiteboard)
- Figlet (ASCII art)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 15:26:31 +01:00
valknarandClaude 76e1af8e97 feat: add Figlet ASCII art generator as 7th tool
- Added Figlet tool with 373 fonts for ASCII art text generation
- Created new gradient-yellow-amber for terminal/retro aesthetic
- Updated Stats component from 6 to 7 tools
- Updated Footer badge to 7 tools and added Figlet link
- Added Figlet to README Available Tools section

Figlet Features:
- 373 curated fonts from xero/figlet-fonts collection
- Live preview and fuzzy search
- Multiple export formats (text, PNG, SVG, code snippets)
- Shareable URLs and keyboard shortcuts
- Perfect for ASCII banners, terminal art, and retro designs

Color: Yellow (#eab308) to Amber (#f59e0b) gradient
URL: https://figlet.kit.pivoine.art

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 13:15:12 +01:00
valknarandClaude f843ad9923 design: simplify logo to suitcase with single brush
Logo Redesign:
- Simplified from toolbox with 3 tools to clean suitcase with 1 brush
- Purple gradient suitcase with handle and latch detail
- Single colorful brush inside (orange-to-red handle, green-to-cyan bristles)
- Smoother animations with reduced complexity
- Better visual clarity and brand identity

Favicon Update:
- Matching simplified design scaled for 64x64
- Clear icon that works at small sizes
- Consistent with main logo design

Visual Elements:
- Suitcase: Purple (#a855f7) to Indigo (#6366f1) gradient
- Brush handle: Orange (#f59e0b) to Red (#ef4444) gradient
- Brush bristles: Green (#10b981) to Cyan (#06b6d4) gradient
- Animated entrance with subtle scale and fade

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 19:20:39 +01:00
valknarandClaude 543338aef2 fix: change Draw card to pink gradient to match footer color
- Created new gradient-pink-rose utility (pink to rose)
- Updated Draw tool to use gradient-pink-rose instead of gradient-orange-pink
- Draw card now displays pink (#ec4899) matching footer link color
- Paint retains gradient-orange-pink for orange identity

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 19:00:59 +01:00
valknarandClaude 3a4fa63de7 polish: streamline colors and enhance UX with major improvements
Color System Improvements:
- Added accentColor prop to ToolCard for consistent color identity
- Each tool now has its signature color for hover effects
- Title and arrow icon now change to tool's accent color on hover
- Footer links match card colors for unified visual language

Hero Section Enhancement:
- Added prominent CTA buttons (Explore Tools + View on GitHub)
- Gradient animated button with hover effects
- GitHub button with icon and border hover effect
- Better visual hierarchy with button placement
- Updated scroll indicator text to "Scroll to explore"

User Experience:
- Improved hover interactions with color-coded feedback
- Better visual consistency across all components
- Enhanced call-to-action visibility
- Smooth transitions and micro-interactions

Color Palette:
- Vert: #10b981 (emerald green)
- Paint: #f97316 (vibrant orange)
- Pastel: #a855f7 (purple)
- Stirling: #667eea (indigo blue)
- Units: #2dd4bf (cyan)
- Draw: #ec4899 (pink)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 18:40:25 +01:00
valknarandClaude 86efde25bc polish: match footer tool link colors to card gradients and increase font size
- Updated footer tool links to use exact gradient colors from cards
  - Vert: emerald green (#10b981)
  - Paint: vibrant orange (#f97316)
  - Pastel: purple (#a855f7)
  - Stirling: indigo blue (#667eea)
  - Units: cyan (#2dd4bf)
  - Draw: pink (#ec4899)
- Increased footer link font size from text-sm to text-base for better readability
- Applied consistent sizing to both Links and Tools columns

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 17:51:09 +01:00
valknarandClaude d0d646e5a0 feat: add Draw (Excalidraw) tool as 6th tool
- Added Draw tool to ToolsGrid with collaborative badges
- Updated Stats component to show 6 tools
- Updated Footer to show 6 tools and include Draw link
- Updated README with Draw tool description
- Draw tool accessible at draw.kit.pivoine.art

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 17:35:56 +01:00
valknarandClaude 47f8fe7040 feat: add Units converter toolkit
Added Units as the 5th tool in the kit:

🔄 Units Converter Features:
- 187 units across 23 measurement categories
- Real-time bidirectional conversion
- Smart fuzzy search for quick unit selection
- Conversion history with localStorage
- Categories: length, mass, temperature, time, angle, area, volume, etc.

🎨 Visual:
- Cyan-purple gradient
- Bidirectional arrows icon (conversion symbol)
- Badges: Real-time, Free

📊 Updates:
- Stats section: 4 → 5 Tools
- Footer: Added Units link with cyan hover
- README: Added tool description
- Grid layout: Now displays 5 tools responsively

🔗 URL: https://units.kit.pivoine.art

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 10:20:29 +01:00
valknarandClaude 34abf6cef2 feat: add Stirling PDF toolkit
Added Stirling PDF as the 4th tool in the kit:

📄 Stirling PDF Features:
- 50+ PDF operations (merge, split, convert)
- OCR processing for scanned documents
- Digital signatures and watermarks
- Privacy-first: locally hosted, no cloud dependency
- Open source with 69.6k+ GitHub stars

🎨 Visual:
- Purple-blue gradient matching brand
- PDF document icon with lines
- Badges: Privacy, Open Source, Free

📊 Updates:
- Stats section: 3 → 4 Tools
- Footer: Added Stirling link
- README: Added tool description
- Grid layout: Now displays 4 tools responsively

🔗 URL: https://stirling.kit.pivoine.art

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 19:13:19 +01:00
valknarandClaude 36742949bd polish: Priority 2 improvements - smooth scroll, badges, back to top
🎯 Smooth Scroll Behavior:
- Added smooth scroll CSS for seamless navigation
- Scroll indicator now links to #tools section
- Added hover states for scroll indicator
- Accessibility: respects prefers-reduced-motion

🏷️ Tool Badges:
- Added feature badges to each tool card
- Vert: Privacy, Open Source, Free
- Paint: Browser-Based, Free
- Pastel: Open Source, WCAG, Free
- Subtle glassmorphic badge design

⬆️ Back to Top Button:
- Animated button appears after scrolling 300px
- Smooth scroll to top on click
- Hover tooltip with "Back to top" label
- Scale animations on hover/tap
- Progress bar at top showing scroll position
- Gradient progress indicator

 Accessibility:
- Added prefers-reduced-motion support
- Proper ARIA labels
- Keyboard accessible
- Smooth animations respect user preferences

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 12:39:14 +01:00
valknarandClaude c7373430f9 polish: Priority 1 improvements - gradients, stats, metadata, footer
 Visual Enhancements:
- Unique gradients per tool (green-teal for Vert, orange-pink for Paint, indigo-purple for Pastel)
- Added new gradient utilities for better color differentiation

📊 Stats Section:
- New animated stats component showing "3 Tools, 100% Open Source, ∞ Privacy First"
- Glassmorphism cards with hover effects
- Icon badges for each stat

🔍 Enhanced Metadata:
- Comprehensive Open Graph tags for social sharing
- Twitter Card support
- Enhanced SEO with detailed keywords (vert, paint, pastel)
- Added SVG favicon with gradient toolbox icon
- Viewport meta tag and preconnect optimization

🔗 Improved Footer:
- 3-column responsive layout
- GitHub repository link with icon
- Quick links to all tools (Vert, Paint, Pastel)
- Tool count badge
- Updated tech stack mention (Next.js 16 & Tailwind CSS 4)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 12:30:08 +01:00
valknarandClaude 9054aa62b8 feat: add Pastel color toolkit and update grid layout
- Added Pastel tool card with color palette icon
- Updated grid to 3-column layout (responsive)
- Removed "More tools coming soon..." message
- Updated README with Pastel tool description

Pastel features:
- Color manipulation and format conversion
- Palette generation with multiple harmony types
- Accessibility testing (WCAG, color blindness)
- Supports hex, RGB, HSL, Lab, OkLab, and more

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 12:16:46 +01:00
valknarandClaude 9eaacc70aa fix: add attestations write permission to workflow
The artifact attestation step was failing with:
"Resource not accessible by integration"

Added missing attestations: write permission to fix the issue.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 11:59:54 +01:00
valknarandClaude 5a16a6ac05 Add GitHub Actions workflow for Docker image publishing
- Automated Docker image builds on push to main
- Multi-architecture support (amd64, arm64)
- Publish to GitHub Container Registry (GHCR)
- Build caching for faster builds
- Artifact attestation for supply chain security
- Semantic versioning support with tags
- Manual workflow dispatch option
- Updated README with CI/CD documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 11:29:28 +01:00
valknarandClaude ce0b2e8470 Initial commit: Kit landing page
- Next.js 16 with Turbopack
- React 19
- Tailwind CSS 4 with CSS-first config
- Framer Motion animations
- Animated logo and hero section
- Tool cards for Vert and Paint
- Glassmorphism effects and gradient animations
- Fully responsive design
- Docker support with Nginx
- Static export ready

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 11:26:19 +01:00