# @openfin/web-interop

`@openfin/web-interop` enables interopability within a web browser. It is intended to be used by both content and platform developers to create integrated experiences which leverage OpenFin's existing interopability APIs.

This package relies on the type definitions found in [@openfin/core](https://www.npmjs.com/package/@openfin/core) which is a required peer dependency.

## Developer Guides

* [Content Developer Guide](docs/web-application-developer-guide.md) - For developers who need access to the `fin` api to build web applications.
* [Platform Developer Guide](docs/platform-developer-guide.md) - For developers building platform-like web experiences who wish to enable and host a Web Interop setup.

## Supported APIs

`@openfin/web-interop` currently supports the following APIs:

- `fin.me.identity` - The identity of the `fin` instance provided by the Web Broker.
- `fin.InterApplicationBus.Channel.connect` - Currently, the only supported channel strategy is `classic`.
- `fin.InterApplicationBus.Channel.create`
- `InteropBroker`
  - `fin.Interop.init`
- `InteropClient`
    - `fin.Interop.connectSync`
    - `fin.me.interop`
    - `InteropClient.getFDC3()` - (FDC3 support is currently limited to context sharing on User Channels)

## API Reference

-   [index](out/docs/README.md)
-   [@openfin/web-interop](out/docs/@openfin/web-interop/README.md)
-   [@openfin/web-interop/iframe-broker](out/docs/@openfin/web-interop/iframe-broker/README.md)
-   [@openfin/web-interop/shared-worker](out/docs/@openfin/web-interop/shared-worker/README.md)

## See Also

-   [OpenFin Container Developer guide](https://developers.openfin.co/of-docs/docs/container-overview)
-   [Fin API reference](https://developer.openfin.co/docs/javascript/stable)
