Skip to Content
texion

Meet Texion

Composable content inputs, attachments, and previews for React applications.

Texion connects the work around an input: writing, attaching files, processing documents, showing previews, and submitting consistent data to your application.

Use a ready-made component, build your own interface with hooks, or process documents without React.

Texion is currently available from the repository; the npm packages have not been published yet. See repository setup to run it locally.

Start with a composer

import { TexionInput } from '@texion/react';
import '@texion/react/styles.css';

export function Composer() {
  return (
    <TexionInput
      preview
      attachments
      onSubmit={({ content, attachments }) => {
        // Store content or send it to your application's backend.
        console.log(content, attachments);
      }}
    />
  );
}

Try the live playground to experiment with chat, form, and rich Markdown inputs.

Choose your starting point

What you needStart here
A composer with attachmentsGetting started
An existing textarea with highlightingSource editing
Editable rich MarkdownRich editing
File extraction and preview capabilitiesSupported formats
Your own input UIRecipes
A custom document formatCustom adapters

Two packages, one lifecycle

@texion/core handles format detection, validation, processing state, extraction, immutable document snapshots, and preview descriptors.

@texion/react adds input components, hooks, attachment lists, and document viewers using that same lifecycle.

Content stays in your application

Texion does not choose an LLM, upload files to a service, or store messages. Your submission handler receives the content and attachments so you can connect your own backend.

PDF and DOCX extraction produces text previews. Scanned PDFs can use opt-in OCR. See security and limits before deploying a file-processing application.

On this page