Registry / web-framework / isomor-react-app

isomor-react-app

JSON →
library2.6.4jsnpmunverified

React application setup package for the Isomor framework (v2.6.4). Isomor enables full-stack TypeScript development in a single project by auto-generating the API layer between frontend and backend, eliminating the need for explicit REST or GraphQL endpoints. It uses Babel transpilation at compile time to split client and server code. Release cadence is irregular; latest stable is v2.6.x. Key differentiator: seamless function calls from UI to server with full type safety, no boilerplate.

npm install isomor-react-app
INSTALL
IMPORT
SIG · ISOMOR-REACT-APP
I
isomor-react-app
web-frameworkjavascriptv2.6.4
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

IsomorReactApp
import IsomorReactApp from 'isomor-react-app'
import { IsomorReactApp } from 'isomor-react-app'
Default export; named import will fail
default
const IsomorReactApp = require('isomor-react-app').default
const IsomorReactApp = require('isomor-react-app')
CJS users must use .default property; package is ESM-first since v2
IsomorReactApp
import IsomorReactApp from 'isomor-react-app'
import * as IsomorReactApp from 'isomor-react-app'
Namespace import imports an object with default key, not the class directly

Sets up an Isomor React application with server directory, port, and a demo component that calls a server function directly.

import IsomorReactApp from 'isomor-react-app'; import React from 'react'; import ReactDOM from 'react-dom'; const app = new IsomorReactApp({ serverDir: './server', port: process.env.PORT ?? '4000', }); app.start(); function App() { const [message, setMessage] = React.useState(''); React.useEffect(() => { // Direct server function call (generated by isomor) import('./server/api').then(({ getMessage }) => { getMessage().then(setMessage); }); }, []); return <div>{message}</div>; } ReactDOM.render(<App />, document.getElementById('root'));
Debug
Known issues
gotchaIsomorReactApp must be instantiated before any server-side imports are resolved, otherwise transpilation may fail.
fix
Ensure 'new IsomorReactApp({...})' is called at the entry point before dynamic imports of server functions.
affects: >=1.0.0
deprecatedThe 'start' method in v2.x is synchronous; it will become async in v3.
fix
Wrap in an async function to prepare for v3: 'await app.start()'.
affects: 2.x
breakingIn v2.0, the constructor option 'serverDir' replaced 'serverFolder'.
fix
Use 'serverDir' instead of 'serverFolder'.
affects: >=2.0.0
gotchaServer functions must be dynamically imported with import() to allow isomor to transpile them at build time.
fix
Use dynamic imports like 'import('./server/api').then(...)' instead of static imports.
affects: >=1.0.0
breakingIsomor v2.6 requires Node >=11; older Node versions will throw on start.
fix
Upgrade Node to v11 or later.
affects: 2.6.x
Errors
Common errors & fixes
Uncaught TypeError: IsomorReactApp is not a constructor
Using named import instead of default import in ESM, or forgetting .default in CJS
fix
ESM: import IsomorReactApp from 'isomor-react-app'; CJS: const IsomorReactApp = require('isomor-react-app').default;
Error: Cannot find module 'isomor'
Missing peer dependency 'isomor'.
fix
Run 'npm install isomor'.
TypeError: app.start is not a function
Importing wrong module or using older version without start method?
fix
Ensure you imported the default export. For v2.x, start is a function; if using v1, use 'app.init()' instead.
Upgrade
Version history
2.6.4latest on npm
Audit
Dependencies
isomorrequiredCore framework for server-side function transpilation and client-server bridging
reactrequiredPeer dependency for React projects
Agent activity
6 hits · last 30 days
node
6
Resources
isomor-react-app — npm install isomor-react-app · libregistry