
Product
Introducing Socket Firewall Enterprise: Flexible, Configurable Protection for Modern Package Ecosystems
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.
@openfin/core
Advanced tools
The core renderer entry point of OpenFin
@openfin/core is changing the structure of its output. See v33 Bundling ChangesThis package contains the type definitions and API entry points for the OpenFin Core API. Start here to develop OpenFin applications in TypeScript.
Libraries are also available for the following frameworks:
This package cannot be installed as a dev dependency because it is not types-only.
With npm:
$ npm i -S @openfin/core
With yarn:
$ yarn add @openfin/core
The fin export is the primary API entry point. Type definitions are defined in the package's default export.
The static fin.me object contains some information about the current runtime environment even if imported outside of an OpenFin setting. In this case, the isOpenFin property of fin.me will be false. Outside of OpenFin environments, OpenFin API calls will nullop and throw an error.
import OpenFin, { fin } from '@openfin/core';
const showWindow = async (identity: OpenFin.Identity) => {
const win = await fin.Window.wrap(identity);
await win.show();
const isOpenFin = fin.me.isOpenFin; // false if not in OpenFin
};
To import the OpenFin namespace:
import OpenFin from '@openfin/core';
type OFWindow = OpenFin.Window;
To have the OpenFin available in your code automatically, just update your tsconfig types key:
{
"compilerOptions": {
"target": ...,
"module": ...,
...,
"types": ["@openfin/core/OpenFin"]
}
}
@openfin/core is moving to a single entry file format. This means that there will be a stricter set of entry points included in the package. This differs from the previous unbundled format, in which output files were broken into many common JS modules.
These changes will allow for improved API and type discoverability via code suggestion and type inspection, and create a clearer, more dependable usage contract for consumers of the package.
Explicit imports from arbitrary files within the module directory (e.g. "@openfin/core/*") will no longer be supported in new versions of @openfin/core , for example:
import { fin } from '@openfin/core/src/mock';
Should be replaced with:
import { fin } from '@openfin/core';
Until further notice, older versions of the @openfin/core package will be compatible with newer versions of the runtime. However, new types and features will only be available in newer releases of @openfin/core
Prior to v30, the OpenFin namespace was ambiently declared and always available. Starting with v30, you must import it directly or specify it in the tsconfig.
FAQs
The core renderer entry point of OpenFin
We found that @openfin/core demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 66 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket Firewall Enterprise is now available with flexible deployment, configurable policies, and expanded language support.

Security News
Open source dashboard CNAPulse tracks CVE Numbering Authorities’ publishing activity, highlighting trends and transparency across the CVE ecosystem.

Product
Detect malware, unsafe data flows, and license issues in GitHub Actions with Socket’s new workflow scanning support.