Bring Your Own (BYO): Create a Package
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 JavaScript is an object-oriented computer programming language. It is most-commonly used for interactive effects in the browser..
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 JavaScript is an object-oriented computer programming language. It is most-commonly used for interactive effects in the browser..
-
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
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 SDK
Extend component functionality in the Unqork Designer Platform.
Custom Component
Understand the state, interface, and events of a custom component.
BYO 7.22 Implementation Examples
Discover examples of component implementation using the 7.22 Unqork Designer Platform.
BYO 7.24 Implementation Examples
Discover examples of component implementation using the 7.24 Unqork Designer Platform.
Host External Assets Using a CDN (Content Delivery Network) Setup
Learn about setting up Express roles and managing permissions.
BYO Best Practices
Learn about best practices for implementing and using BYO assets.