d0d646e5a09f9abe9336d5a12900ff7bc206af13
- 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>
Kit Landing Page
A stylish, animated landing page for kit.pivoine.art - your creative toolkit.
Features
- ✨ Animated UI - Smooth animations with Framer Motion
- 🎨 Modern Design - Glassmorphism effects, gradients, and animated backgrounds
- 📱 Responsive - Mobile-first design that works on all devices
- ⚡ Fast - Static export with Next.js 16 and Turbopack for optimal performance
- 🎯 SEO Optimized - Proper meta tags and semantic HTML
- 🚀 Production Ready - Docker support with Nginx
Tech Stack
- Next.js 16 - React framework with App Router and Turbopack
- React 19 - Latest React with modern features
- Tailwind CSS 4 - Utility-first CSS with CSS-first configuration
- Framer Motion - Professional animation library
- TypeScript 5 - Type-safe development
- ESLint 9 - Latest linting with flat config
- pnpm - Fast, efficient package manager
Getting Started
Prerequisites
- Node.js 20+
- pnpm (via corepack)
Development
# Install dependencies
pnpm install
# Run development server
pnpm dev
# Build for production
pnpm build
# Preview production build locally
pnpm start
Visit http://localhost:3000 to see the site.
Docker Deployment
Using Pre-built Image from GHCR
The Docker image is automatically built and published to GitHub Container Registry on every push to main:
# Pull and run the latest image
docker pull ghcr.io/valknarness/kit-ui:latest
docker run -p 80:80 ghcr.io/valknarness/kit-ui:latest
Build Locally
Or build and run locally:
# Build the image
docker build -t kit-landing .
# Run the container
docker run -p 80:80 kit-landing
Docker Compose
For production deployment, see /home/valknar/Projects/docker-compose/kit/compose.yaml.
Available Tags
latest- Latest build from main branchmain- Main branch buildsv*- Semantic version tags (e.g.,v1.0.0)<branch>-<sha>- Branch-specific builds with commit SHA
Project Structure
.
├── app/
│ ├── layout.tsx # Root layout with metadata
│ ├── page.tsx # Home page
│ └── globals.css # Global styles and utilities
├── components/
│ ├── AnimatedBackground.tsx # Animated gradient background
│ ├── Hero.tsx # Hero section with logo
│ ├── Logo.tsx # Animated SVG logo
│ ├── ToolCard.tsx # Tool card component
│ ├── ToolsGrid.tsx # Grid of available tools
│ └── Footer.tsx # Footer component
├── public/ # Static assets
├── Dockerfile # Multi-stage Docker build
├── nginx.conf # Nginx configuration
└── next.config.ts # Next.js configuration
Customization
Adding New Tools
Edit components/ToolsGrid.tsx and add a new tool object to the tools array:
{
title: 'Tool Name',
description: 'Tool description',
url: 'https://tool.kit.pivoine.art',
gradient: 'gradient-purple-blue', // or 'gradient-cyan-purple'
icon: (
// Your SVG icon here
),
}
Styling
Tailwind CSS 4 uses a new CSS-first configuration approach:
- Theme customization: Edit the
@themeblock inapp/globals.css - Custom utilities: Add
@utilityblocks inapp/globals.css - Animations: Define keyframes directly in the
@themeblock - Colors & fonts: Configure via CSS custom properties in
@theme
Available Tools
- Vert - Privacy-focused file converter (images, audio, documents)
- Paint - Browser-based image editor
- Pastel - Modern color manipulation toolkit with palette generation and accessibility testing
- Stirling - Powerful PDF toolkit with 50+ operations (merge, split, convert, OCR, sign)
- Units - Smart unit converter with 187 units across 23 categories (length, mass, temperature, etc.)
- Draw - Virtual whiteboard for sketching hand-drawn style diagrams (flowcharts, wireframes, collaborative editing)
CI/CD Pipeline
The project uses GitHub Actions for automated Docker image builds:
Workflow Features
- ✅ Automated builds on push to main and tags
- ✅ Multi-architecture support (linux/amd64, linux/arm64)
- ✅ GitHub Container Registry (GHCR) publishing
- ✅ Build caching for faster builds
- ✅ Artifact attestation for supply chain security
- ✅ Semantic versioning support
Triggering Builds
# Automatic build on push to main
git push origin main
# Create a versioned release
git tag v1.0.0
git push origin v1.0.0
# Manual trigger via GitHub Actions UI
# Go to Actions → Build and Push Docker Image → Run workflow
Using the Published Image
# Latest from main branch
docker pull ghcr.io/valknarness/kit-ui:latest
# Specific version
docker pull ghcr.io/valknarness/kit-ui:v1.0.0
# Specific commit
docker pull ghcr.io/valknarness/kit-ui:main-abc1234
Performance
- Static export for fast loading
- Optimized images and assets
- Gzip compression via Nginx
- Proper caching headers
License
Private project - All rights reserved.
Author
Created for pivoine.art
Description
Languages
TypeScript
88.6%
CSS
8%
Dockerfile
1.8%
JavaScript
1.6%