mrkeyoor.com_
Sat 17 Oct 13:31 UTC
Webevaluationupdated 11 Oct 2026

trix review

Trix adds a rich text editor to web applications for messages, comments, and articles. It supplies familiar formatting controls and HTML output, while your application handles saving content and storing uploaded files.

+1stars / 7d
Verdict

Our Trix run installed 1,897 packages and used 275 MB, then its build and test commands both stopped because rake was missing. Use its published editor for ordinary formatted forms when you can own file storage and accept the document model. Choose another approach when preserving imported layouts or editing inside custom content blocks is central to the product.

We ran it

Lab card: what happened when we ran trixScreenshot of trix (trix-editor.org)
Install✓ · 22s1897 packages · 275 MB
Build✗ · 12s
Tests✗ · 14sran, no count parsed
Repo311 files~36,520 lines of source · 2.8 MB · 1 CI workflows

Answers from our run

Does trix build from source?

Dependencies installed in 22 seconds (1897 packages), and the build failed. We cloned commit ae78b4e into a clean Debian container with 3 CPUs and no project-specific setup.

Do trix's tests pass?

No. The project's own test command exited unsuccessfully after 14 seconds, and its output did not expose an individual test count.

Who should not use trix?

Products requiring imported HTML to preserve every layout detail: the README says formatting outside the document model is lost.

What are the alternatives to trix?

Tiptap, Quill. Our Trix run installed 1,897 packages and used 275 MB, then its build and test commands both stopped because rake was missing.

Setup3/5Browser integration is direct, source commands hit missing Rake
Docs5/5Specific form, attachment, initialization, and document-model guidance
Community4/5October push and current browser and sanitizer work
Maturity4/5Defined editing model, with clear import and attachment limits

Discussed on

  1. hnTrix: A rich text editor for everyday writing510 points
  2. hnBasecamp/trix: A rich text editor for everyday writing23 points

Who it’s for

Developers adding formatted writing to ordinary web forms through custom elements.
Teams comfortable with the documented headings, lists, quotes, and inline formatting.
Applications that can implement their own attachment uploads and permanent file URLs.

Who it’s NOT for

Products requiring imported HTML to preserve every layout detail: the README says formatting outside the document model is lost.
Teams expecting attachment hosting to come with the editor: your code must upload files and supply permanent URLs.
Products requiring users to edit inside content attachments: the README says these units can be moved or removed, but not edited directly.
Contributors limited to a Node-only environment: our build and test commands both stopped because rake was unavailable.

Setup reality

Our sandbox installed commit ae78b4e in 22 seconds, adding 1,897 packages and using 275 MB. The build failed with exit code 127 in 12 seconds, and the test command failed with exit code 127 in 14 seconds. Both logs stopped at rake -C action_text-trix sync because rake was not found.

The browser integration uses a published ESM or UMD distribution, CSS, and an editor element connected to a form. It needs no editor-service credential. Your application supplies content persistence and any authenticated attachment upload endpoint with permanent file URLs.

The README targets evergreen desktop and mobile browsers. Its source instructions name Yarn and Rollup, but our source run also reached Rake. Form association depends on browser support, and untrusted initial HTML must follow the documented escaped-input path rather than live editor children.

Trix gives ordinary web forms a ready-made editor

Drop a trix-editor custom element into a form and Trix supplies a toolbar for everyday writing. That is a useful starting point for a comment box or an internal article field: you can keep working on the application instead of designing every editing control. The form integration instructions show a hidden input whose value follows changes in the editor, giving the server a familiar submission path.

The contributor checkout was 2.8 MB across 311 files, with roughly 36,520 source lines. That size doesn't tell you the browser payload. Trix supplies ESM and UMD distributions and default CSS for the toolbar and formatted content. Its internal document model converts input into editing operations before rendering it back to the browser. The tradeoff is deliberate: documents follow Trix's representation, which limits what imported HTML can retain.

What happened when we ran it

Our sandbox installed Trix commit ae78b4e in 22 seconds, adding 1,897 packages and occupying 275 MB on disk. We ran it on October 9, 2026, in a fresh Debian container with 3 CPUs, 8 GB of RAM, image lab-node:22, no secrets, and no elevated privileges. Dependency installation succeeded. That result covers the repository's development environment, rather than the cost of shipping an editor to users.

The build failed with exit code 127 after 12 seconds. Its log reached rake -C action_text-trix sync, then the shell reported rake: not found. Sass deprecation warnings appeared earlier, but the terminating error was the unavailable executable. The README's source-development section describes Yarn and Rollup and gives the commands to generate distributions. Our Node-oriented container also needed a working Rake command for this path to finish.

The test command failed with exit code 127 after 14 seconds and showed the same Rake error. We cannot report a passing browser suite or a number of failed cases from that tail. Our scan found 1 CI workflow file, no Dockerfile, and no tests directory. Directory discovery doesn't settle whether tests exist: the measured command was present, but it stopped before the supplied output demonstrated browser-test results.

HTML conversion can discard the formatting you need

Trix's document conversion instructions say imported formatting is lost when the internal model cannot represent it. That is a serious reason to choose another editor if users expect pasted documents to retain their original layout. The default attributes cover familiar writing features such as bold text, links, headings, quotes, and lists. They suit a message composer better than an application whose central requirement is unrestricted document design.

None of the 1,897 packages installed in our run establishes HTML round-trip fidelity. For an existing publishing product, collect representative saved articles and compare what survives loading, editing, and saving. If a particular table or custom block is essential, make that preservation requirement part of the selection decision. A successful dependency install would not answer it, and our build didn't finish far enough to support claims about browser behavior.

Custom controls have a documented route: toolbar buttons can invoke external actions, and code can manipulate the selection or insert attachments through the editor interface. There is a limit to that escape hatch. Content attachments behave as indivisible units that users can move or remove, rather than directly edit. If your design requires editing the contents of a complex embedded widget, account for that interaction before committing to Trix's model.

File uploads and safe initialization remain application work

A pasted or dropped file stays pending until your code stores it remotely and gives Trix a permanent URL. The attachment storage instructions make the division clear. You own the upload endpoint, access rules, and storage lifecycle. Applications that only need text can reject files through the file-accept event. I'd start there unless attachments are an explicit requirement, because a visible preview alone doesn't mean a file has been saved.

The 275 MB development footprint excludes any attachment storage you provision. Saving HTML also needs care when loading it back. The README warns against putting untrusted HTML directly inside the editor element: the browser parses those children before Trix sanitizes the editor value. Its recommended hidden-input path requires correctly escaped attribute content or assignment through the DOM value property. The warning is concrete enough to make initialization code part of a code review.

October activity continues beyond the May release

The last push was October 10, 2026, and GitHub listed 194 open issues and PRs. The latest release, v2.1.19, was published May 9. Recent work includes a Safari line-break pull request and changes to sanitization inside template content. A May release tag alongside October development is not evidence of abandonment. It does mean consumers should distinguish released behavior from work still sitting in an open pull request.

Tiptap is worth comparing when a headless framework better suits a custom editor interface. Quill offers another extensible WYSIWYG approach. For an ordinary form with familiar formatting, I'd try Trix using its published distribution and wire up saving before customizing the toolbar. For a source fork, the first practical task is supplying the missing Rake executable that stopped our 12-second build. For document-heavy products, the first decision is whether losing unsupported formatting is acceptable.

Alternatives

ProjectWhat it isPick it when
Tiptap gh↗A headless rich text editor framework.pick this instead when building your own editor interface is part of the product.
QuillA WYSIWYG editor focused on compatibility and extensibility.pick this instead when you want another extensible editing model to compare against your existing content.

What people are saying

  1. [velocity-scout] basecamp/trix

Sources

  1. Trix README and integration guide
  2. Trix v2.1.19 release
  3. Safari line-break pull request 1368
  4. Template-content sanitization pull request 1371
  5. Trix live repository metadata

More web reviews

dioramas · elpis · deepseek-whale-girl · floorplan-3d · taro · driver.js · the whole board →