git e023b2da41 Add data-testid and accessibility improvements across components
Enhancements include:
- Added data-testid attributes to all interactive components for improved e2e testing
- Improved ARIA labels and semantic HTML attributes throughout
- Added aria-label, aria-hidden, aria-describedby, and aria-current where appropriate
- Enhanced form elements with proper aria-invalid and error associations
- Added role attributes to semantic containers
- Improved navigation accessibility with aria-expanded and aria-controls
- Added proper aria-pressed to toggle buttons

Modified components:
- Dialog components (SnippetDialog, CreateNamespaceDialog, DeleteNamespaceDialog)
- Navigation components (NavigationSidebar, Navigation toggle)
- Snippet display components (SnippetCard, SnippetCardActions)
- Snippet manager components (SnippetToolbar, SnippetGrid)
- Snippet editor components (SnippetFormFields, InputParameterList, InputParameterItem)
- Namespace management (NamespaceSelector)
- Layout components (PageLayout)

These changes improve both automated testing capabilities and accessibility for users with disabilities.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-01-20 18:12:59 +00:00
2026-01-17 14:23:21 +00:00
2026-01-17 14:23:21 +00:00
2026-01-17 14:23:21 +00:00
2026-01-17 14:23:21 +00:00
2026-01-17 14:23:21 +00:00

CodeSnippet - Code Snippet Manager

A powerful code snippet management application with flexible storage backends and an integrated component library showcase.

🚀 Quick Start

Choose the setup that works best for you:

docker-compose up -d

Access at: http://localhost:3000 (auto-configured with Flask backend)

Option 2: Local Development

# Start backend
docker-compose -f docker-compose.backend-only.yml up -d

# Configure frontend
echo "VITE_FLASK_BACKEND_URL=http://localhost:5000" > .env

# Start frontend
npm install
npm run dev

Access at: http://localhost:5173

Option 3: Frontend Only (No Backend)

npm install
npm run dev

Access at: http://localhost:5173 (uses local IndexedDB storage)

📖 See detailed setup instructions →

🔑 Key Features

  • 📝 Snippet Management - Create, edit, and organize code snippets with syntax highlighting
  • 🔍 Smart Search - Real-time search across title, description, language, and code
  • 👁️ Live Preview - Split-screen editor with live React component preview
  • 💾 Flexible Storage - Choose between local IndexedDB or Flask backend
  • 🔄 Auto-Configuration - Automatically use Flask backend via environment variable
  • 🗂️ Component Library - Showcase organized by atomic design principles
  • 📤 Export/Import - Backup and restore your entire database
  • 🎨 Beautiful UI - Modern dark theme with purple and cyan accents

🎯 Storage Backends

CodeSnippet supports two storage backends:

IndexedDB (Default)

  • Local browser storage
  • No server required
  • Perfect for personal use

Flask Backend (Optional)

  • Remote server storage
  • Multi-device sync
  • Requires Flask backend

🔧 Auto-Configuration:
Set VITE_FLASK_BACKEND_URL environment variable to automatically use Flask backend:

# .env file
VITE_FLASK_BACKEND_URL=http://localhost:5000

When set, the app automatically connects to Flask backend and disables manual configuration.

📖 Complete backend configuration guide →

📚 Documentation

Getting Started

Backend & Storage

Production Deployment

🛠️ Technology Stack

  • React 19 + TypeScript
  • SQL.js (SQLite in WebAssembly)
  • Flask (Python backend)
  • Monaco Editor (VS Code editor)
  • Framer Motion (animations)
  • Shadcn UI (component library)
  • Tailwind CSS (styling)

📄 License

The Spark Template files and resources from GitHub are licensed under the terms of the MIT license, Copyright GitHub, Inc.

S
Description
No description provided
Readme MIT 38 MiB
Languages
HTML 56%
TypeScript 32.2%
SCSS 9%
JavaScript 1.7%
CSS 0.8%
Other 0.3%