Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Tiptap Editor

Tiptap Editor Laravel Package

besmartand-pro/tiptap-editor

View on GitHub
Deep Wiki
Context7

Reusable Symfony Tiptap editor bundle with optional EasyAdmin integration and Flysystem uploads.

Frequently asked questions about Tiptap Editor
Can I use this bundle in a Laravel project, or is it strictly for Symfony?
This bundle is designed exclusively for Symfony applications. While Laravel and Symfony share some similarities, this package relies heavily on Symfony’s form system, Stimulus bundle, and EasyAdmin integration, making it incompatible with Laravel out of the box. If you need a Tiptap solution for Laravel, consider alternatives like Spatie’s Laravel packages or standalone frontend implementations.
What Laravel/Symfony versions does this bundle support?
The bundle requires **Symfony 7.4+** and **PHP 8.3+**, which aligns with Symfony’s current LTS support. If you’re using an older Symfony version (e.g., 6.x) or PHP 8.2 or below, this bundle will not work. Check your project’s compatibility before installation.
How do I integrate this with EasyAdmin for a content-heavy admin panel?
The bundle includes a `TiptapField` specifically for EasyAdmin, which simplifies adding rich-text editors to CRUD interfaces. Just include it in your EasyAdmin configuration like any other field. The bundle handles the Stimulus integration automatically, so no additional frontend setup is required beyond the initial installation command.
Does this bundle support custom Tiptap extensions like tables or mentions?
No, the bundle ships with a fixed set of Tiptap extensions (e.g., links, images, basic formatting) and does not provide built-in support for custom extensions like tables or mentions. If you need these, you’ll either have to fork the bundle or implement them manually in your frontend assets, which may require overriding the Stimulus controller.
What frontend build tools are required, and will it work with Webpack 4?
This bundle requires **Encore or Vite** for asset compilation, as it relies on modern JavaScript tooling. Webpack 4 is not supported, and attempting to use it may lead to compatibility issues with the generated Stimulus controller or SCSS files. If your project uses Webpack 4, you’ll need to migrate to Vite or Encore first.
How do I handle image uploads with this bundle?
The bundle provides optional drag-and-drop and paste-to-upload functionality, but it assumes you already have a backend solution for handling file storage (e.g., **Flysystem** or **VichUploader**). You’ll need to configure your Symfony app to process uploads separately, including validation, storage, and security measures like CORS and file type restrictions.
Is there a way to customize the toolbar or styling without forking the bundle?
Customization is limited due to the bundle’s hardcoded Stimulus namespace and SCSS structure. You can override the default toolbar or styles by extending the generated `tiptap_editor_controller.ts` and `tiptap_editor.scss` files in your project’s assets directory. However, deep customization (e.g., adding new extensions) may require modifying the bundle’s source or using a different approach.
What happens if I don’t have `symfony/stimulus-bundle` installed?
The bundle’s installation command (`php bin/console besmartand-pro:tiptap-editor:install`) will fail if `symfony/stimulus-bundle` is missing. This is a hard dependency, so you must install it first via Composer (`composer require symfony/stimulus-bundle`). The bundle does not support alternative frontend architectures like Alpine.js or standalone JavaScript.
Are there any known issues with Bootstrap Icons or CSS conflicts?
The bundle includes **Bootstrap Icons** as a dependency, which may conflict with existing CSS frameworks like **Tailwind** or **Bootstrap** if they also use icon libraries. To avoid conflicts, inspect your project’s CSS and either exclude Bootstrap Icons from the bundle’s SCSS or override its styles in your global CSS file.
How do I test this bundle in a CI/CD pipeline or staging environment?
Since the bundle requires frontend dependencies (`@tiptap/*` and `bootstrap-icons`), ensure your CI/CD pipeline installs these packages (e.g., via `npm install` or `pnpm install`) before running tests. The backend components (Symfony form types and Stimulus controller) can be tested independently, but full integration tests will need a working frontend build. Use Symfony’s `kernel.test` environment for backend testing.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
codifyo/ts-generator-bundle
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor