What is MIME type "application/x-typescript"?

A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.

application/x-typescript designates files that contain TypeScript code. These files are processed differently by editors and servers because they signal specialized language rules.
They help development tools apply syntax highlighting, error detection, and auto-completion. They also assist web servers in delivering the file as text with proper character encoding.
Files using this MIME type carry the TS extension.
For further technical details, visit the TypeScript official site or review MIME type information on MDN.

Associated file extensions

Usage Examples

HTTP Header

When serving content with this MIME type, set the Content-Type header:


    Content-Type: application/x-typescript    
  

HTML

In HTML, you can specify the MIME type in various elements:


    <a href="file.dat" type="application/x-typescript">Download file</a>    
  

Server-side (Node.js)

Setting the Content-Type header in Node.js:


    const http = require('http');    
    
    http.createServer((req, res) => {    
      res.setHeader('Content-Type', 'application/x-typescript');    
      res.end('Content here');    
    }).listen(3000);    
  

Associated file extensions

FAQs

Can web browsers execute application/x-typescript files directly?

No, standard web browsers cannot execute TypeScript code natively; they only understand JavaScript. Files served with application/x-typescript must be transpiled (compiled) into standard JavaScript (application/javascript) using tools like the TypeScript Compiler (tsc) or Webpack before a browser can run them.

Why is my server identifying my .ts files as video?

The .ts file extension is officially registered for MPEG Transport Stream video files (video/mp2t). Many default server configurations (such as IIS or Apache) assume .ts files are video streams. To fix this, you must explicitly configure your server to associate the extension with application/x-typescript instead.

How do I configure Nginx to serve TypeScript files correctly?

You need to modify your mime.types file or server block configuration to override the default video association. Add the line application/x-typescript ts; to ensure Nginx delivers files with the TS extension as code rather than a binary video stream.

What is the difference between application/x-typescript and video/mp2t?

application/x-typescript is a text-based media type used for TypeScript source code, while video/mp2t is a binary format used for broadcasting video. They share the same file extension (.ts), which frequently causes MIME type conflicts on web servers if not properly configured.

How do I add support for application/x-typescript in Apache?

You can define the MIME type in your .htaccess file or main configuration file. Use the directive AddType application/x-typescript .ts to tell Apache to treat these files as TypeScript source code. This prevents the server from sending the video/mp2t header by mistake.

Should I expose application/x-typescript files on my production server?

Generally, no. TypeScript files are source code and should be compiled into JavaScript for production use. Exposing raw .ts files can reveal comments and internal logic structure. However, they may be served intentionally alongside source maps to assist developers with debugging.

Is application/x-typescript the standard IANA MIME type?

No, it is not an officially registered IANA MIME type, hence the x- prefix indicating it is experimental or non-standard. However, it is the de facto standard used by most development tools and servers to identify TypeScript content, though you may occasionally see text/typescript used as well.

General FAQ

What is a MIME type?

A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.

MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.

MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.

How do I find the MIME type for a file?

You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.

Why are multiple MIME types listed for one extension?

Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.