Skip to content

[Feature] Refactor comment plugin - replace Cusdis with custom solution #4

Description

@freedeaths

Description

The current Cusdis comment plugin doesn't meet our design and functionality requirements. We should develop a custom comment solution that better integrates with the application's UI and provides more control over the user experience.

Current Issues with Cusdis

  • Visual design doesn't match application theme
  • Limited customization options
  • Third-party dependency with potential reliability concerns
  • May not align with privacy and data control requirements

Proposed Solution

Create a custom comment system that could be:

  • A standalone repository/package for reusability
  • Better integrated with the application's design system
  • More configurable and maintainable
  • Privacy-focused with self-hosted options

Technical Considerations

Architecture Options

  • Standalone React component library
  • Separate microservice with API
  • Serverless functions (Vercel, Netlify, etc.)
  • Self-hosted solution with database

Features to Include

  • Clean, modern UI that matches application theme
  • Markdown support in comments
  • Comment threading/replies
  • Moderation capabilities
  • User authentication options
  • Email notifications
  • Anti-spam measures
  • Export/import functionality

Integration Requirements

  • Easy integration with existing codebase
  • Theme compatibility (light/dark modes)
  • Responsive design for mobile devices
  • Performance optimization
  • SEO-friendly comment rendering

Repository Structure

Consider creating a separate repository for:

  • Better maintainability and versioning
  • Potential open-source contribution
  • Reusability across different projects
  • Independent development and testing

Next Steps

  1. Research existing open-source comment systems
  2. Define detailed requirements and specifications
  3. Create new repository structure
  4. Design API and component interfaces
  5. Implement MVP version
  6. Integration testing with main application

Priority

Medium - Enhancement that will improve user experience and application control.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions