
Security News
GitHub Actions Pricing Whiplash: Self-Hosted Actions Billing Change Postponed
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.
@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
The npm package @openfin/core receives a total of 767 weekly downloads. As such, @openfin/core popularity was classified as not popular.
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.

Security News
GitHub postponed a new billing model for self-hosted Actions after developer pushback, but moved forward with hosted runner price cuts on January 1.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.