Skip to main content

A set of resources and tools to help developers create packages for the Area28 application.

Project description

Developer Toolkit

Developer Toolkit providing developers with the tools and documentation necessary to build packages for the Area28 Application.

Python version

Area28 follows [https://vfxplatform.com/] which restricts Python to 3.7.x currently.

Interfaces

  • IPlugin
  • IApiExtension
  • IApplicationExtension
  • IChatExtension
  • IEventExtension
  • IInteractionExtension
  • ILoggerExtension
  • IMetadataExtension
  • IPreferencesExtension
  • IRealtimeExtension
  • IUiExtension
  • IUnitsExtension

Plugins

Plugins are decorators that can be used to manipulate the payload before being processed or before getting returned.

Extensions

Extension are used to add additional functionality to the Area28 application. Extensions are broken up into multiple types, defined within the Interfaces list.

Packaging

Each package has a unique identifier associated with it and is compressed into a .a28 file. Please look at the a28 development kit for details.

Package structure

The package structure is as follows:

@{provider}/{package} extensions/{extensions[]}.py scripts/ scripts/install.py scripts/postinstall.py scripts/preinstall.py scripts/uninstall.py plugin/{application specific plugin} plugins/{plugin[]}.py bin/{executable[]}.py package.json

Package.json structure

{
  "name": "@area28/unity-application",
  "version": "0.0.4",
  "description": "Detect is running within Unity3D.",
  "homepage": "https://area28.io",
  "keywords": [
    "area28",
    "chat",
    "lowercase",
    "transform"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/area28/area28.git",
    "directory": "packages/unity-application"
  },
  "author": "Gary Stidston-Broadbent",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/area28/area28/issues"
  },
  "bin" : {
    "myapp" : "./bin/lowercase.py"
  },
  "os" : [
    "darwin",
    "linux"
  ],
  "cpu" : [
    "x64",
    "ia32",
    "!mips"
  ],
  "scripts": {
    "preinstall": "scripts/preinstall.py",
    "install": "scripts/install.py",
    "postinstall": "scripts/postinstall.py",
    "uninstall" : "scripts/uninstall.py"
  }
}

Building a package

  • a28 build --src @area28/chat-logger --dest dist

Installing a package locally

  • a28 install --pkg dist/00000000-0000-0000-0000-00000000-0.0.1.a28

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

a28-0.3.0.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

a28-0.3.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file a28-0.3.0.tar.gz.

File metadata

  • Download URL: a28-0.3.0.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.7.7 Darwin/19.6.0

File hashes

Hashes for a28-0.3.0.tar.gz
Algorithm Hash digest
SHA256 2634f2ff33c8bd3be2dd619b6fe45c9350c295d4cff9ec3d3806d1107abda4da
MD5 f623d97a88ce9d2428ec9d8356aa361f
BLAKE2b-256 98b26cbcf96b064e36efafa2e781d5711193f8ee5cfac98b652a53ad984de849

See more details on using hashes here.

File details

Details for the file a28-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: a28-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.7.7 Darwin/19.6.0

File hashes

Hashes for a28-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cec107fe904cc2bcbe237549047ddd59f880d937b48e55a8bfd56f109216d89c
MD5 4bc4852fb1534ed4a099355158dba555
BLAKE2b-256 9d63b07f880dbf274954c0fb30af1a4449cd7f6bee97f74dd451496fe813fcbb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page