Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/art-media-platform/amp-sdk-go

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/art-media-platform/amp-sdk-go

  • v0.8.6
  • Source
  • Go
  • Socket score

Version published
Created
Source

art.media.platform.SDK

A fully provisioned solution for files, media, and 3D asset sharing and deployment we can all agree on.

art.media.platform ("Amp") is a potent 3D client-to-infrastructure suite that provides a secure, scalable, and extensible runtime for 3D applications. It supports 3D and media-centric apps with pluggable infrastructure, allowing artists, publishers, creators, and organizations to control asset deployments and experiences within high-fidelity spatial or geographic environments.

Key Features

  • Secure, "turn-key" support for:

    • 3D spaces and linking: Users experience spatially placed media and files and can be linked to any real or virtual space, transforming human accessibility.
    • Payment processing: Built-in payment suite amp.nile offers easy integration with Stripe and Payflow.
    • Platform coverage: Amp lets you ship first-class 3D experiences on Windows, Mac, Linux, Android, iOS, and AR/VR ("XR") platforms like VisionPro, Horizon, and other OEM ecosystems (e.g. HoloLens, Magic Leap).
    • Continuous deployment: Amp's "crate" system provides asset and SKU independence from your marketing and engineering release cycles.
    • Integrated security: Full support for third-party providers and hardware-based authentication & signing (e.g., Yubikey).
  • Seamless integration with Unity and Unreal via an embedded Go native library that your 3D app invokes through convenient bindings — available in the amp.SDK.

  • A lightweight, stand-alone "headless" native executable and shared library amp.host.lib with tags amp.host that offers federated and decentralized service and storage.

What Does This Solve?

Amp bridges native 3D apps to system, network, and infrastructure services, addressing key challenges:

Traditional file and asset management systems are inadequate for organizing, experiencing, or reviewing hundreds or thousands of assets. Teams often resort to makeshift solutions for collaboration and sharing, compromising efficiency and security.

Teams often collaborate over large file sets but deploy using production systems entirely different from their development workflows. Many sharing and collaboration solutions exist, but they lack first-class spatial linking and native 3D content integration while suffering from inflexible, confining web or OS-based user experiences.

Meanwhile, web-based 3D frameworks like Three.js do not compare to hardware-native Unreal and Unity experiences nor offer a path for real-world asset deployments. For example, 3D experiences often require asset deployments exceeding many gigabytes, which are impossible through a web browser. Worse, web stacks pose many blockers that publishers have little or no ability to address, such as texturing features, performance issues, or animation pain.

art.media.platform is a bridge and toolbox that allows 3D app developers to focus on their core value proposition. It offers rich support for persistent state, user interfaces, and content immersion, allowing apps to break free of web and OS limitations. Teams, organizers, artists, engineers, scientists, and ultimately consumers need better tools to richly and safely share assets.

Benefits

  • Content distribution: Choose how to deploy your projects in a way that makes the most sense for your team and budget.
  • Flexibility: Enjoy strategic flexibility on how you publish apps and distribute content.
  • Asset management: Leverage Amp's content deployment system that allows you to deploy content updates without having to deploy new App builds.
  • Savings: Save resources by not maintaining UIs and custom behavior for each OS, web browser, and form factor.
  • Cash flow: Use Amp's payment processing module to monetize your work and receive payments through your Stripe or PayFlow account.

A Next Generation

Previous generations of this work went into production in 2019 to become PLAN 3D. This architecture trajectory, though ambitious, is increasingly recognized as the next inevitable step in the evolution of 3D application building.

In a world where AI-assisted exploits will only worsen, our security model prioritizes security and privacy. It uses nested containers and offers "state-grade" protection — all while the client runtime delivers rich, native 3D experiences for businesses, organizations, and creatives.

Spatial Web

This framework offers in-app web browsing that pairs powerfully with spatial linking. Frameworks such as Webview are just another component in the Amp client, allowing your app to have an embedded web browser out of the box. This allows URLs and web experiences to be linked spatially or from multiple map locations.

Geo-Spatial Linking

Geographic and spatial-centric applications such as GIS, CAD, and BIM are everywhere in modern construction and real-time logistics. Amp's 3D client natively integrates maps and locations, allowing you to unify location-based linking, spatially precise environments, and first-class 3D asset integration.

Extensibility

The less obvious value of Amp is its extensibility. The amp.App interface is flexible and unrestricted, allowing you to expose anything compatible with Go. This means any Go, C, C++, or any native static or dynamic module can be wrapped and push a 3D-native UX (with stock or custom assets).

Human Accessibility

People with loss of sight, hearing, or motor skills rely on third-party peripherals and software to interact with the world. Amp integrates with most third-party input devices, such as bearing and range sensors for the visually impaired or control sticks for physical limitations.

Tagging

Amp's tag system is phonetic, AI-friendly, search-friendly, and privacy-friendly. It offers powerful and flexible linking similar to how #hashtags and wikis add value. We see this system as an excellent candidate to become an IEEE standard for markup and hashing.

Integration Overview

This repo is lightweight and dependency-free, so it can be added to your project without consequence.

At a high level:

  1. Add amp.SDK to your Go project. If you want to expose additional functionality, implement your own amp.App.
  2. Clone amp.host (not yet public) and include your amp.App, similar to how a library in a C project registers a static or dynamic dependency.
  3. Build amp.host with your additions embedded within it.
  4. In your Unity or Unreal app, link in amp.host.lib and add the Amp UX runtime support glue.
  5. On startup, amp.Host instantiates registered amp.App instances as needed. During runtime, amp.host.lib dispatches URL requests addressed to your app and are "pinned".
  6. The Amp UX runtime manages the user's experience of currently pinned URLs while providing a toolbox of extendable "stock" and "skinnable" components. Pinned requests receive state updates until they are canceled.

Points of Interest

api.tag.goVersatile tagging and hash scheme that is AI and search friendly
api.task.goGoroutine wrapper inspired by a conventional parent-child process model
api.app.goDefines how state is requested, pushed, and merged
api.host.goTypes and interfaces that amp.Host implements

FAQs

Package last updated on 23 Nov 2024

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc