Dependencies
LeanJSX relies on the following tooling:
- TypeScript: LeanJSX projects are configured by default to use TypeScript (though use of pure JavaScript can still be configured).
- The JSX implementation that LeanJSX provides relies on TypeScript for overriding the default React implementation.
- esbuild: To allow developers to use JSX directly on the server route handlers, LeanJSX uses esbuild to transpile and bundle the server into a single NodeJS script.
- Vite: LeanJSX relies on Vite's bundling of web applications to:
- Process the skeleton HTML templates that are filled with JSX content.
- Bundle developer-defined resources like CSS and client-side JavaScript.
- Inject LeanJSX-specific dependencies into the page.
- Express: Express is the most ubiquitous HTTP server in NodeJS, which is why it is the default choice for LeanJSX projects.
- Support for other servers is planned for future releases
- pino: The default logging implementation for LeanJSX uses Pino under the hood.
- eslint/typescript-eslint: Eslint is configured out of the box, and includes a LeanJSX specific plugin.
- Nodemon: For live reloading on server changes when running
npm run dev
.