Stefan Hardegger d489078721 Improve RichTextEditor to preserve formatting on paste
**Enhanced Visual Mode:**
- Add paste event handler that preserves HTML formatting when pasting
- Integrate with shared sanitization configuration for consistent filtering
- Preload sanitization config for optimal performance
- Support for bold, italic, and other basic formatting in visual mode

**Updated Sanitization Config:**
- Add more useful HTML tags: kbd, samp, var, details, summary, colgroup, col
- Add attributes for better table support: start, type for ol
- Add style attributes for more elements: table, ul, ol, li, blockquote, pre, code
- Maintain security while allowing richer content formatting

**User Experience:**
- Users can now paste formatted content (bold, italic, lists, etc.) in visual mode
- Content is automatically sanitized using backend configuration
- Updated help text to reflect new capabilities
- Maintains backward compatibility with plain text input

**Technical Improvements:**
- Async clipboard API support with fallbacks
- Error handling for paste operations
- Consistent sanitization between manual input and paste operations

Resolves issue where pasted formatted content was stripped to plain text in visual mode.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-23 16:51:50 +02:00
j
2025-07-23 16:21:39 +02:00
2025-07-21 08:47:52 +02:00
2025-07-21 08:47:52 +02:00
2025-07-22 21:49:40 +02:00
2025-07-22 21:49:40 +02:00
2025-07-21 08:47:52 +02:00
2025-07-21 08:47:52 +02:00
2025-07-22 21:49:40 +02:00

StoryCove

A self-hosted web application for storing, organizing, and reading short stories from various internet sources.

Quick Start

  1. Copy environment variables:
cp .env.example .env
  1. Edit .env with secure values for all variables

  2. Start the application:

docker-compose up -d
  1. Access the application at http://localhost

Architecture

  • Frontend: Next.js (Port 3000)
  • Backend: Spring Boot (Port 8080)
  • Database: PostgreSQL (Port 5432)
  • Search: Typesense (Port 8108)
  • Proxy: Nginx (Port 80)

Development

Frontend Development

cd frontend
npm install
npm run dev

Backend Development

cd backend
./mvnw spring-boot:run

Commands

  • docker-compose up -d - Start all services
  • docker-compose down - Stop all services
  • docker-compose logs -f [service] - View logs
  • docker-compose build - Rebuild containers

Features

  • Story management with HTML content support
  • Author profiles with ratings and metadata
  • Tag-based categorization
  • Full-text search capabilities
  • Responsive reading interface
  • JWT-based authentication
  • Docker-based deployment

For detailed specifications, see storycove-spec.md.

Description
No description provided
Readme 314 MiB
Languages
Java 56.2%
TypeScript 42.5%
Dockerfile 0.5%
Shell 0.3%
CSS 0.3%
Other 0.2%