Skip to content

R4ULtv/text-editor

Repository files navigation

Text Editor Interface

A sophisticated rich text editor built with modern web technologies, featuring an extensive toolbar, AI assistance, and multimedia embedding capabilities. Perfect for writers, developers, and content creators who need a powerful yet intuitive editing experience.

✨ Features

  • 🎨 Clean, distraction-free interface
  • 📝 Rich text formatting
  • 🔤 Multiple heading styles
  • 📋 Lists and blockquotes
  • 💻 Code block support
  • 🌙 Dark mode support
  • 📱 Responsive design
  • 🖼️ Image drag & drop
  • ↩️ Undo/Redo functionality
  • 🤖 AI Writing Assistance
    • Translation to multiple languages
    • Text summarization
    • Writing improvements and suggestions
    • Tone adjustment
    • Grammar and error correction
    • Content length optimization

🚀 Technologies Used

📋 Prerequisites

  • Node.js (version 18.x or later)
  • npm or yarn
  • Modern web browser

🛠️ Installation

  1. Clone the repository:

    git clone https://github.com/r4ultv/text-editor.git
  2. Navigate to the project directory:

    cd text-editor
  3. Install dependencies:

    npm install
  4. Set up environment variables: Create a .env.local file in the root directory and add necessary variables (if any).

🎮 Running the Development Server

npm run dev

Open http://localhost:3000 in your browser to start using the editor.

🖊️ Usage

Text Editor provides several formatting options accessible through the toolbar:

⌨️ Keyboard Shortcuts

Function Shortcut
Bold ⌘ B
Italic ⌘ I
Underline ⌘ U
Heading 1 ⌘ ⌥ 1
Heading 2 ⌘ ⌥ 2
Heading 3 ⌘ ⌥ 3
Bullet List ⌘ ⇧ 8
Ordered List ⌘ ⇧ 7
Block Quote ⌘ ⇧ B
Inline Code ⌘ E
Code Block ⌘ ⌥ C
Improve Writing ⌥ I
Summarize Writing ⌥ S
Longer Writing ⌥ L
Shorter Writing ⌥ H
Fix Grammar ⌥ G

Additional Features

  • Image drag & drop support
  • Undo/Redo functionality
  • Import/Export capabilities
  • AI-powered writing assistance

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

This project is open source and available under the MIT License.

🙏 Acknowledgments

  • TipTap for the powerful text editing capabilities
  • Heroicons for the beautiful icons
  • Radix for accessible UI components
  • Google AI for Chrome for enhanced AI capabilities
  • The Next.js team for the amazing framework

Made with ❤️ by Raul Carini