Drop any file to identify it
No upload. No signup. No sending your file halfway across the internet.
We tell you what it is, right here in your browser.
Drop it!
Let go to identify this file.
Couldn't identify this file
Need to convert it? fwip it →
You're looking at a .jsx file — JavaScript with HTML mixed in. That sounds illegal, and it felt that way when Facebook introduced it in 2013 with React. JSX lets you write UI components that combine markup and logic in a single file, using an XML-like syntax that compiles to regular JavaScript function calls.
JSX is not valid JavaScript — browsers can't run it directly. A build tool (Babel, esbuild, or Vite) transforms `<Button onClick={handleClick}>Save</Button>` into `React.createElement('Button', { onClick: handleClick }, 'Save')` before the browser sees it. This compilation step is why React projects need a build pipeline. JSX is technically framework-agnostic, but in practice, seeing .jsx means React.
VS Code provides excellent JSX support — syntax highlighting, IntelliSense, auto-imports, and error checking. Any text editor can open the file since it's plain text. For type safety, TypeScript's .tsx extension is the modern standard. If you're starting a new React project, consider TSX from the beginning — retrofitting types onto JSX is more painful than starting with them.