Bring Your Own (BYO): Create a Package

Prev Next

Overview

A BYO (Build Your Own) package is a platform extension that enables the integration of custom functionality in Unqork. BYO packages let developers implement reusable, configurable logic that enhances the Designer experience and runtime behavior.

The Bring Your Own framework is intended for developers who have a strong understanding of the Unqork Designer Platform and JavaScript.

Package Structure

A BYO package must be bundled as a .tar.gz archive and include specific files to interface with the Unqork platform.

Each package supports a single JavaScript entry point (index.js). Future support is planned for code-splitting and multiple chunks.

Required Package Structure

myPackage.tar.gz
  ├── manifest.json
  └── index.js

Create the Archive Using CLI

tar -cvzf myPackage.tar.gz manifest.json index.js

Understanding the Package Contents

The .tar.gz package must contain the following files:

manifest.json

The manifest.json file defines the metadata for the package. It describes the custom functionality and provides necessary information for the Unqork Designer Platform to register, render, and configure the components correctly.

The manifest file serves as the contract between your custom implementation and the Unqork platform.

Learn more about the Manifest Schema in our BYO: Manifest JSON Schema article.

index.js (Main Entry File)

The index.js file is the main implementation entry point. It must conform to the following requirements:

  • Must be written in JavaScript.

  • Must use ES Module (ESM) format. The CommonJS and UMD formats are not supported.

  • Must include named exports that match the keys defined in the manifest.json.

  • Must be compatible with ES2020 to ensure cross-browser support.

Unqork recommends using a modern bundler, like Vite, to ensure the package is compiled and structured correctly for browser-based consumption.

Summary of BYO Packaging Requirements

Now that you understand the structure and contents of a BYO package, verify your package meets the Unqork's BYO requirements listed below:

Requirement

Details

Archive Format

.tar.gz

Required Files

manifest.json, index.js

Entry File Format

ES Module (.js with named exports)

Compatibility Target

es2020

Supported Language

JavaScript

Export Convention

Named exports aligned with manifest metadata

Resources

Bring Your Own (BYO) Framework Landing Page

Find all the resources needed to build your own components here.

Introduction to the Bring Your Own (BYO) Framework

Get started building your own custom assets, including components, events, and operations.

Understanding the manifest.json File

Learn about the file's specification, component and event definitions.

Understanding the BYO Runtime Engine API

Discover the interface between your custom BYO components and the Unqork platform.

Custom Component

Understand the state, interface, and events of a custom component.

Custom Component SDK

Extend component functionality in the Unqork Designer Platform.

Custom Operations

Learn more about creating custom operations for use in the Operations Builder..

Custom Events

Learn more about creating custom events for use in the Operations Builder.

Event Payloads

Learn more about viewing and using event payloads with the Operations Builder.

BYO  Implementation Examples

Discover examples of component implementation using the Unqork Designer Platform.

BYO Best Practices

Learn about best practices for implementing and using BYO assets.

BYO General FAQ

Learn about the Bring Your Own Framework and discover frequently asked questions.