# Integration Guide

> Integrate TX Text Control into web apps: ASP.NET Core, Blazor, Angular, React and JavaScript frontends, REST services, WebSockets, ASP.NET MVC and Web Forms.

- **Product:** TX Text Control .NET Server
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Text Control .NET Server > Integration Guide
- **1134 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/llms-full.txt

---

A first tutorial ends where most projects begin: in an application that already has its own frontend, controllers, services and users. The Integration Guide takes the Document Editor, the Document Viewer and document processing from Getting Started into such applications. It shows how each frontend connects to the ASP.NET Core backend, how documents travel between them and what hosting and security require.

Each page assumes that you know the first steps of its frontend from [Getting Started](https://docs.textcontrol.com/tx-text-control-dotnet-server/getting-started/llms-full.txt) and links to it.

### How the Parts Fit Together

Every integration consists of the same parts, whatever the frontend:

```text
Frontend: ASP.NET Core view, Blazor page, Angular, React or JavaScript
    |
    |-- Document Editor --- WebSocket ---> WebSocket middleware ---> editor backend process
    |-- Document Viewer --- HTTP --------> TextControl controller and engine
    |-- your code --------- HTTP --------> your controllers with ServerTextControl and MailMerge
    v
ASP.NET Core backend with TX Text Control .NET Server
```

- **The backend is an ASP.NET Core application.** It hosts the WebSocket middleware and the backend process of the Document Editor, the controller of the Document Viewer and your own document endpoints.
- **The frontend decides where the backend lives.** Views and Blazor pages run in the backend application itself. Angular, React and JavaScript frontends are separate applications that connect to the backend by URL.
- **Separate frontends need CORS for HTTP.** The Document Viewer and your controllers answer requests from other origins only with a CORS policy; the WebSocket connection of the editor needs none.

### Choose a Frontend

| Frontend | Choose it when | Read |
|---|---|---|
| ASP.NET Core MVC or Razor Pages | Your application renders its pages on the server with Razor views or Razor Pages | [ASP.NET Core](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/aspnet-core/llms-full.txt) |
| Blazor | You build the user interface in C# and want to work with documents on the server | [Blazor](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/blazor/llms-full.txt) |
| Angular | Your application is an Angular single-page application | [Angular](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/angular/llms-full.txt) |
| React | Your application is a React single-page application | [React](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/react/llms-full.txt) |
| JavaScript | Your pages use no framework, or another server technology renders them | [JavaScript](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/javascript/llms-full.txt) |
| ASP.NET MVC or Web Forms on the .NET Framework | You maintain an existing Windows application that doesn't run on ASP.NET Core yet | [ASP.NET on .NET Framework](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/dotnet-framework/llms-full.txt) |

### Find the Right Page

| If you want to | Read |
|---|---|
| Choose the packages, configure *Program.cs* for views, Razor Pages or separate frontends, protect the endpoints and use `ServerTextControl` in controllers and services | [ASP.NET Core](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/aspnet-core/llms-full.txt) |
| Add both components to an Angular application with environment files, a development proxy, a document service and routes | [Angular](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/angular/llms-full.txt) |
| Import the components in Vite, connect React projects to a shared backend and load, save and remove the components | [React](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/react/llms-full.txt) |
| Use both components in pages without a framework and create or remove them at run time | [JavaScript](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/javascript/llms-full.txt) |
| Set up the Blazor Document Viewer, program the editor in C# and preview merged templates | [Blazor](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/blazor/llms-full.txt) |
| Build HTTP endpoints that create, merge and convert documents for other applications | [REST Services](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/rest-services/llms-full.txt) |
| Understand the WebSocket connection of the Document Editor and host it behind IIS, nginx or Azure App Service | [WebSocket Architecture](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/websockets/llms-full.txt) |
| Add the Document Editor, the Document Viewer or mail merge to an ASP.NET MVC or Web Forms application on the .NET Framework | [ASP.NET on .NET Framework](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/dotnet-framework/llms-full.txt) |

### Where to Start

1. [ASP.NET Core](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/aspnet-core/llms-full.txt): the backend that every frontend needs.
2. The page of your frontend: [Angular](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/angular/llms-full.txt), [React](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/react/llms-full.txt), [JavaScript](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/javascript/llms-full.txt) or [Blazor](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/blazor/llms-full.txt).
3. [WebSocket Architecture](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/websockets/llms-full.txt): before you deploy the Document Editor behind servers, proxies or load balancers.
4. [Deployment Guide](https://docs.textcontrol.com/tx-text-control-dotnet-server/deployment/llms-full.txt): publish the application.

Applications on the .NET Framework don't follow this order: [ASP.NET on .NET Framework](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/dotnet-framework/llms-full.txt) covers ASP.NET MVC and Web Forms, which use the Classic engine and, for the Document Editor, the TX TextControl Service instead of the backend process of the ASP.NET Core packages.

---

## In This Section

- [Angular](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/angular/llms-full.txt): Integrate the Document Editor and Document Viewer into an Angular app: environments, a dev proxy, a document service, TypeScript calls, routes and hosting.
- [ASP.NET Core](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/aspnet-core/llms-full.txt): Integrate the Document Editor, Document Viewer and ServerTextControl into ASP.NET Core: packages, Program.cs for MVC, Razor Pages and SPAs, secure endpoints.
- [Blazor](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/blazor/llms-full.txt): Use the Blazor DocumentEditor and DocumentViewer components: packages, render mode, Program.cs for both, the viewer setup, C# methods, merging and JS interop.
- [ASP.NET on .NET Framework](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/dotnet-framework/llms-full.txt): ASP.NET MVC and Web Forms apps on the .NET Framework: Classic engine, setup assemblies, licenses.licx, the TX TextControl Service, requirements and samples.
- [JavaScript](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/javascript/llms-full.txt): Add the Document Editor and Document Viewer to pages without a framework: scripts, a backend on another origin, fetch, both on one page and dynamic pages.
- [React](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/react/llms-full.txt): Add the Document Editor and Document Viewer to React apps: React versions, Vite imports, environment variables, a dev proxy, unmounting and hosting.
- [REST Services](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/rest-services/llms-full.txt): Build HTTP services with ServerTextControl and MailMerge: request design, a merge endpoint, clients in .NET and JavaScript, errors, long jobs and security.
- [WebSocket Architecture](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/websockets/llms-full.txt): Host the Document Editor's WebSocket connection: the URL, UseTXWebSocketMiddleware order and overloads, WebSocketHandler, the backend TCP link, IIS and nginx.

---

## Nearby

- **Previous:** [Examples](https://docs.textcontrol.com/tx-text-control-dotnet-server/ai/examples/llms-full.txt)
- **Next:** [ASP.NET Core](https://docs.textcontrol.com/tx-text-control-dotnet-server/integration/aspnet-core/llms-full.txt)
