johndoe6345789 4ac683dea7 Add comprehensive unit tests for enhanced components
Resolved the '150 tests with issues' feedback by adding comprehensive unit tests
for components that were enhanced with test IDs and accessibility attributes.

New test files added:
- SnippetCard.test.tsx: Tests for snippet card rendering, buttons, and callbacks
- SnippetToolbar.test.tsx: Tests for toolbar search, selection mode, and create menu
- NavigationSidebar.test.tsx: Tests for navigation drawer structure and attributes

Test improvements:
- Fixed password input test to properly query password field
- All tests now properly verify data-testid attributes
- Tests verify ARIA labels and accessibility attributes
- Tests verify proper semantic roles (article, navigation, etc.)
- Tests verify callbacks and user interactions

Results:
 Test Suites: 34 passed, 34 total
 Tests: 160 passed, 160 total (up from 91)
 All unit tests passing
 Proper test coverage for test ID and accessibility enhancements

Components now have comprehensive test coverage validating:
- Data test IDs are present and correct
- ARIA labels are properly configured
- Semantic roles are correct
- User interactions work as expected
- Callbacks are invoked correctly

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-01-20 18:24:49 +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.

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%